Features: 1) Add save method to enforce single pending order per user in Order model;
Fixes: 1) Adjust import order in `core/models.py` for better consistency; Extra: Refactor formatting for better readability in `core/models.py`; Update `pyproject.toml` version to 2.6.2; Update compiled translation file `cs_CZ/LC_MESSAGES/django.mo`.
This commit is contained in:
parent
6cf2903c74
commit
8375ef41db
78 changed files with 4301 additions and 2771 deletions
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -80,7 +80,7 @@ msgstr "الصورة"
|
|||
msgid "images"
|
||||
msgstr "الصور"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "المخزون"
|
||||
|
||||
|
|
@ -88,7 +88,7 @@ msgstr "المخزون"
|
|||
msgid "stocks"
|
||||
msgstr "الأسهم"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -96,35 +96,35 @@ msgstr "الأسهم"
|
|||
msgid "price"
|
||||
msgstr "السعر"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "تصنيف المنتج"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "معلومات أساسية"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "تواريخ مهمة"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "الترجمات"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "طلب المنتج"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "اطلب المنتجات"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "هل الأعمال"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "التكوين"
|
||||
|
||||
|
|
@ -483,55 +483,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "قائمة بجميع المنتجات (عرض بسيط)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(بالضبط) UUID المنتج"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(أيقونات) اسم المنتج"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(قائمة) أسماء الفئات، غير حساسة لحالة الأحرف"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(بالضبط) معرّف الفئة UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(قائمة) أسماء العلامات، غير حساسة لحالة الأحرف"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) الحد الأدنى لسعر السهم"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) الحد الأقصى لسعر السهم"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(بالضبط) المنتجات النشطة فقط"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(أيكساكت) اسم العلامة التجارية"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(زط) الحد الأدنى لكمية المخزون"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(بالضبط) سبيكة المنتج"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(بالضبط) الرقمية مقابل المادية"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -539,33 +539,33 @@ msgstr ""
|
|||
"قائمة مفصولة بفواصل من الحقول للفرز حسب. البادئة بـ \"-\" للفرز التنازلي. \n"
|
||||
"**مسموح بها:** uuid، تصنيف، اسم، سبيكة، إنشاء، تعديل، سعر، عشوائي"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "استرداد منتج واحد (عرض تفصيلي)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "معرف المنتج UUID أو سبيكة المنتج"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "إنشاء منتج"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "إعادة كتابة منتج موجود، مع الحفاظ على الحقول غير القابلة للتحرير"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr "تحديث بعض حقول منتج موجود، مع الحفاظ على الحقول غير القابلة للتحرير"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "حذف منتج"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "لم يتم توفير مصطلح بحث."
|
||||
|
||||
|
|
@ -621,7 +621,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "يرجى تقديم إما Order_uuid أو order_uid_hr_hr_id - متنافيان!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "جاء نوع خاطئ من طريقة order.buy(): {type(instance)!s}"
|
||||
|
||||
|
|
@ -807,7 +807,7 @@ msgstr "الرموز الترويجية"
|
|||
msgid "products on sale"
|
||||
msgstr "المنتجات المعروضة للبيع"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "العروض الترويجية"
|
||||
|
||||
|
|
@ -823,11 +823,11 @@ msgstr "البائع"
|
|||
msgid "product"
|
||||
msgstr "المنتج"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "المنتجات المفضلة"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "قوائم التمنيات"
|
||||
|
||||
|
|
@ -975,8 +975,8 @@ msgstr "سمة هذه القيمة"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "المنتج المحدد المرتبط بقيمة هذه السمة"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "المنتج المرتبط"
|
||||
|
||||
|
|
@ -1072,7 +1072,7 @@ msgstr "ربط هذا المنتج اختياريًا بعلامة تجارية"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "العلامات التي تساعد في وصف أو تجميع هذا المنتج"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "علامات المنتج"
|
||||
|
||||
|
|
@ -1092,7 +1092,7 @@ msgstr "توفير اسم تعريفي واضح للمنتج"
|
|||
msgid "product name"
|
||||
msgstr "اسم المنتج"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "إضافة وصف تفصيلي للمنتج"
|
||||
|
||||
|
|
@ -1191,7 +1191,7 @@ msgstr "الحالة الحالية للطلب في دورة حياته"
|
|||
msgid "order status"
|
||||
msgstr "حالة الطلب"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"بنية JSON للإشعارات التي سيتم عرضها للمستخدمين، في واجهة مستخدم المشرف، يتم "
|
||||
|
|
@ -1229,54 +1229,58 @@ msgstr "معرّف يمكن قراءته من قبل البشر"
|
|||
msgid "order"
|
||||
msgstr "الطلب"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "يجب أن يكون لدى المستخدم طلب واحد فقط معلق في كل مرة!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "لا يمكنك إضافة منتجات إلى طلب غير معلق إلى طلب غير معلق"
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "لا يمكنك إضافة منتجات غير نشطة للطلب"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "لا يمكنك إضافة منتجات أكثر من المتوفرة في المخزون"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} غير موجود: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr "لا يمكنك إزالة المنتجات من طلب غير معلق من طلب غير معلق"
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} غير موجود مع الاستعلام <{query}>"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "الرمز الترويجي غير موجود"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr "لا يمكنك الشراء في هذه اللحظة، يرجى المحاولة مرة أخرى بعد بضع دقائق."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "قيمة القوة غير صالحة"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "لا يمكنك شراء طلبية فارغة!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "عدم كفاية الأموال لإكمال الطلب"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1284,188 +1288,188 @@ msgstr ""
|
|||
"لا يمكنك الشراء بدون تسجيل، يرجى تقديم المعلومات التالية: اسم العميل، البريد"
|
||||
" الإلكتروني للعميل، رقم هاتف العميل"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "طريقة الدفع غير صالحة"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr "لا يمكنك إنشاء طلب مومنتال دون تقديم عنوان إرسال الفواتير"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "السعر الذي دفعه العميل لهذا المنتج وقت الشراء"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "سعر الشراء وقت الطلب"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr "تعليقات داخلية للمسؤولين حول هذا المنتج المطلوب"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "التعليقات الداخلية"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "إشعارات المستخدم"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "تمثيل JSON لسمات هذا العنصر"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "سمات المنتج المطلوبة"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "الإشارة إلى الطلب الأصلي الذي يحتوي على هذا المنتج"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "ترتيب الوالدين"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "المنتج المحدد المرتبط بخط الطلب هذا"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "كمية هذا المنتج المحدد في الطلب"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "كمية المنتج"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "الحالة الحالية لهذا المنتج بالترتيب"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "حالة خط الإنتاج"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "معرّف العلامة الداخلي لعلامة المنتج"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "اسم العلامة"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "اسم سهل الاستخدام لعلامة المنتج"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "اسم عرض العلامة"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "علامة المنتج"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr "توفير نص بديل للصورة لإمكانية الوصول"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "النص البديل للصورة"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "تحميل ملف الصورة لهذا المنتج"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "صورة المنتج"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "يحدد الترتيب الذي يتم عرض الصور به"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "أولوية العرض"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "المنتج الذي تمثله هذه الصورة"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "صور المنتج"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "الرمز الفريد الذي يستخدمه المستخدم لاسترداد قيمة الخصم"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "معرّف الرمز الترويجي"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "مبلغ الخصم الثابت المطبق في حالة عدم استخدام النسبة المئوية"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "مبلغ الخصم الثابت"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "النسبة المئوية للخصم المطبق في حالة عدم استخدام مبلغ ثابت"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "النسبة المئوية للخصم"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "الطابع الزمني عند انتهاء صلاحية الرمز الترويجي"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "وقت انتهاء الصلاحية"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "الطابع الزمني الذي يكون هذا الرمز الترويجي صالحاً منه"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "وقت بدء الصلاحية"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"الطابع الزمني عند استخدام الرمز الترويجي، فارغ إذا لم يتم استخدامه بعد"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "الطابع الزمني للاستخدام"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "المستخدم المعين لهذا الرمز الترويجي إن أمكن"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "المستخدم المعين"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "الرمز الترويجي"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "الرموز الترويجية"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1473,140 +1477,140 @@ msgstr ""
|
|||
"يجب تحديد نوع واحد فقط من الخصم (المبلغ أو النسبة المئوية)، وليس كلا النوعين"
|
||||
" أو لا هذا ولا ذاك."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "تم استخدام الرمز الترويجي بالفعل"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "نوع الخصم غير صالح للرمز الترويجي {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "النسبة المئوية للخصم على المنتجات المختارة"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "نسبة الخصم"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "تقديم اسم فريد لهذا العرض الترويجي"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "اسم الترقية"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "وصف الترقية"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "حدد المنتجات المشمولة في هذا العرض الترويجي"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "المنتجات المشمولة"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "الترقية"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "البائع الذي يورد هذا المنتج المخزون"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "البائع المرتبط"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "السعر النهائي للعميل بعد هوامش الربح"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "سعر البيع"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "المنتج المرتبط بإدخال المخزون هذا"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "السعر المدفوع للبائع مقابل هذا المنتج"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "سعر الشراء من البائع"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "الكمية المتوفرة من المنتج في المخزون"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "الكمية في المخزون"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "SKU المعين من قبل البائع لتحديد المنتج"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "وحدة تخزين البائع"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "الملف الرقمي المرتبط بهذا المخزون إن أمكن"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "ملف رقمي"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "إدخالات المخزون"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "المنتجات التي حددها المستخدم على أنها مطلوبة"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "المستخدم الذي يمتلك قائمة الرغبات هذه"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "مالك قائمة الرغبات"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "قائمة الرغبات"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "تنزيل"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "التنزيلات"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "لا يمكنك تنزيل أصل رقمي لطلب غير مكتمل"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "فيلم وثائقي"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "الأفلام الوثائقية"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "لم يتم حلها"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -82,7 +82,7 @@ msgstr "Obrázek"
|
|||
msgid "images"
|
||||
msgstr "Obrázky"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Stock"
|
||||
|
||||
|
|
@ -90,7 +90,7 @@ msgstr "Stock"
|
|||
msgid "stocks"
|
||||
msgstr "Zásoby"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -98,35 +98,35 @@ msgstr "Zásoby"
|
|||
msgid "price"
|
||||
msgstr "Cena"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Hodnocení produktu"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Základní informace"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Důležitá data"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Překlady"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Objednat produkt"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Objednat produkty"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Je podnikání"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Konfigurace"
|
||||
|
||||
|
|
@ -503,55 +503,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Seznam všech produktů (jednoduché zobrazení)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(přesně) UUID produktu"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(icontains) Název produktu"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(seznam) Názvy kategorií, nerozlišuje velká a malá písmena"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(přesně) Kategorie UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(seznam) Názvy značek, nerozlišuje velká a malá písmena"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Minimální cena akcií"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Maximální cena akcií"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(přesně) Pouze aktivní produkty"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Obchodní značka"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Minimální skladové množství"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(přesně) Product slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(přesně) Digitální vs. fyzické"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -559,36 +559,36 @@ msgstr ""
|
|||
"Seznam polí oddělených čárkou, podle kterých se má třídit. Pro sestupné řazení použijte předponu `-`. \n"
|
||||
"**Povolené:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Vyhledání jednoho produktu (podrobné zobrazení)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "Identifikátor UUID produktu nebo Slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Vytvoření produktu"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Přepsání existujícího produktu se zachováním polí, která nelze editovat"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Aktualizace některých polí existujícího produktu se zachováním polí, která "
|
||||
"nelze upravovat."
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Odstranění produktu"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "Nebyl zadán žádný vyhledávací termín."
|
||||
|
||||
|
|
@ -643,7 +643,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "Zadejte prosím order_uuid nebo order_hr_id - vzájemně se vylučují!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "Z metody order.buy() pochází nesprávný typ: {type(instance)!s}"
|
||||
|
||||
|
|
@ -832,7 +832,7 @@ msgstr "Propagační kódy"
|
|||
msgid "products on sale"
|
||||
msgstr "Produkty v prodeji"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Propagační akce"
|
||||
|
||||
|
|
@ -848,11 +848,11 @@ msgstr "Prodejce"
|
|||
msgid "product"
|
||||
msgstr "Produkt"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Produkty uvedené na seznamu přání"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Seznamy přání"
|
||||
|
||||
|
|
@ -999,8 +999,8 @@ msgstr "Atribut této hodnoty"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "Konkrétní produkt spojený s hodnotou tohoto atributu"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Související produkt"
|
||||
|
||||
|
|
@ -1096,7 +1096,7 @@ msgstr "Volitelně přiřadit tento produkt ke značce"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Značky, které pomáhají popsat nebo seskupit tento produkt"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Štítky produktu"
|
||||
|
||||
|
|
@ -1116,7 +1116,7 @@ msgstr "Uveďte jasný identifikační název výrobku"
|
|||
msgid "product name"
|
||||
msgstr "Název produktu"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Přidejte podrobný popis produktu"
|
||||
|
||||
|
|
@ -1217,7 +1217,7 @@ msgstr "Aktuální stav zakázky v jejím životním cyklu"
|
|||
msgid "order status"
|
||||
msgstr "Stav objednávky"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"JSON struktura oznámení pro zobrazení uživatelům, v uživatelském rozhraní "
|
||||
|
|
@ -1255,56 +1255,60 @@ msgstr "lidsky čitelné ID"
|
|||
msgid "order"
|
||||
msgstr "Objednávka"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "Uživatel smí mít vždy pouze jednu čekající objednávku!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr ""
|
||||
"Do objednávky, která není v procesu vyřizování, nelze přidat produkty."
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "Do objednávky nelze přidat neaktivní produkty"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "Nelze přidat více produktů, než je dostupné na skladě"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} neexistuje: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr "Nelze odebrat produkty z objednávky, která není nevyřízená."
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} neexistuje s dotazem <{query}>"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Promo kód neexistuje"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"V tuto chvíli nemůžete nakupovat, zkuste to prosím znovu za několik minut."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Neplatná hodnota síly"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "Nelze zakoupit prázdnou objednávku!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Nedostatek finančních prostředků na dokončení objednávky"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1312,187 +1316,187 @@ msgstr ""
|
|||
"bez registrace nelze nakupovat, uveďte prosím následující údaje: jméno "
|
||||
"zákazníka, e-mail zákazníka, telefonní číslo zákazníka."
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Neplatný způsob platby"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr "nelze vytvořit momentální objednávku bez uvedení fakturační adresy."
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "Cena, kterou zákazník zaplatil za tento produkt v době nákupu."
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Nákupní cena v době objednávky"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr "Interní komentáře pro administrátory k tomuto objednanému produktu"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Interní připomínky"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Oznámení uživatele"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "JSON reprezentace atributů této položky"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Objednané atributy produktu"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Odkaz na nadřazenou objednávku, která obsahuje tento produkt"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Objednávka rodičů"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "Konkrétní produkt spojený s touto objednávkou"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Množství tohoto konkrétního produktu v objednávce"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Množství produktu"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Aktuální stav tohoto produktu v objednávce"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Stav produktové řady"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Interní identifikátor značky produktu"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Název štítku"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Uživatelsky přívětivý název pro značku produktu"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Zobrazení názvu štítku"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Štítek produktu"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr "Poskytněte alternativní text k obrázku kvůli přístupnosti."
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Text alt obrázku"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Nahrát soubor s obrázkem tohoto produktu"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Obrázek produktu"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Určuje pořadí, v jakém se obrázky zobrazují."
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Priorita zobrazení"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "Výrobek, který tento obrázek představuje"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Obrázky produktů"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Jedinečný kód, který uživatel použije k uplatnění slevy."
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Identifikátor propagačního kódu"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "Pevná výše slevy, pokud není použito procento"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Pevná výše slevy"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "Procentuální sleva uplatněná v případě nevyužití pevné částky"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Procentuální sleva"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Časové razítko ukončení platnosti promokódu"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Doba ukončení platnosti"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Časové razítko, od kterého je tento promokód platný"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Čas zahájení platnosti"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr "Časové razítko použití promokódu, prázdné, pokud ještě nebyl použit."
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Časové razítko použití"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Uživatel přiřazený k tomuto promokódu, je-li to relevantní"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Přiřazený uživatel"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Propagační kód"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Propagační kódy"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1500,140 +1504,140 @@ msgstr ""
|
|||
"Měl by být definován pouze jeden typ slevy (částka nebo procento), nikoli "
|
||||
"však oba typy slev nebo žádný z nich."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Promo kód byl již použit"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Neplatný typ slevy pro promocode {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Procentuální sleva na vybrané produkty"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Procento slevy"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Uveďte jedinečný název této propagační akce"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Název akce"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Popis propagace"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Vyberte, které produkty jsou zahrnuty do této akce"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Zahrnuté produkty"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Propagace"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "Prodejce dodávající tento výrobek na sklad"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Přidružený prodejce"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Konečná cena pro zákazníka po přirážkách"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Prodejní cena"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "Produkt spojený s touto skladovou položkou"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "Cena zaplacená prodejci za tento výrobek"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Kupní cena prodejce"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Dostupné množství produktu na skladě"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Množství na skladě"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "SKU přidělený prodejcem pro identifikaci výrobku"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "SKU prodejce"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Digitální soubor spojený s touto zásobou, je-li to vhodné"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Digitální soubor"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Zápisy do zásob"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Výrobky, které uživatel označil jako požadované"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Uživatel, který vlastní tento seznam přání"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Majitel seznamu přání"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Seznam přání"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Stáhnout"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Ke stažení na"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "Digitální aktivum pro nedokončenou objednávku nelze stáhnout."
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Dokumentární film"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Dokumentární filmy"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Nevyřešené"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -81,7 +81,7 @@ msgstr "Billede"
|
|||
msgid "images"
|
||||
msgstr "Billeder"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Lager"
|
||||
|
||||
|
|
@ -89,7 +89,7 @@ msgstr "Lager"
|
|||
msgid "stocks"
|
||||
msgstr "Aktier"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -97,35 +97,35 @@ msgstr "Aktier"
|
|||
msgid "price"
|
||||
msgstr "Pris"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Produktvurdering"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Grundlæggende information"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Vigtige datoer"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Oversættelser"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Bestil produkt"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Bestil produkter"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Er forretning"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Konfig"
|
||||
|
||||
|
|
@ -511,55 +511,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Liste over alle produkter (enkel visning)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(præcis) Produkt-UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(icontains) Produktnavn"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(liste) Kategorinavne, skelner ikke mellem store og små bogstaver"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(præcis) UUID for kategori"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(liste) Tag-navne, skelner ikke mellem store og små bogstaver"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Minimum aktiekurs"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Maksimal aktiekurs"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(præcis) Kun aktive produkter"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Mærkenavn"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Minimum lagermængde"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(nøjagtig) Produktsug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(præcis) Digital vs. fysisk"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -567,35 +567,35 @@ msgstr ""
|
|||
"Kommasepareret liste over felter, der skal sorteres efter. Præfiks med `-` for faldende. \n"
|
||||
"**Tilladt:** uuid, vurdering, navn, slug, oprettet, ændret, pris, tilfældig"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Hent et enkelt produkt (detaljeret visning)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "Produkt UUID eller Slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Opret et produkt"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "Omskriv et eksisterende produkt og bevar ikke-redigerbare felter"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Opdater nogle felter i et eksisterende produkt og bevar ikke-redigerbare "
|
||||
"felter"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Slet et produkt"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "Der er ikke angivet noget søgeord."
|
||||
|
||||
|
|
@ -650,7 +650,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "Angiv enten order_uuid eller order_hr_id - det udelukker hinanden!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "Forkert type kom fra metoden order.buy(): {type(instance)!s}"
|
||||
|
||||
|
|
@ -843,7 +843,7 @@ msgstr "Promokoder"
|
|||
msgid "products on sale"
|
||||
msgstr "Produkter til salg"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Kampagner"
|
||||
|
||||
|
|
@ -859,11 +859,11 @@ msgstr "Leverandør"
|
|||
msgid "product"
|
||||
msgstr "Produkt"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Produkter på ønskelisten"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Ønskelister"
|
||||
|
||||
|
|
@ -1010,8 +1010,8 @@ msgstr "Attribut for denne værdi"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "Det specifikke produkt, der er knyttet til denne attributs værdi"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Tilknyttet produkt"
|
||||
|
||||
|
|
@ -1107,7 +1107,7 @@ msgstr "Tilknyt eventuelt dette produkt til et brand"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Tags, der hjælper med at beskrive eller gruppere dette produkt"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Produktmærker"
|
||||
|
||||
|
|
@ -1127,7 +1127,7 @@ msgstr "Giv produktet et klart identificerende navn"
|
|||
msgid "product name"
|
||||
msgstr "Produktets navn"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Tilføj en detaljeret beskrivelse af produktet"
|
||||
|
||||
|
|
@ -1228,7 +1228,7 @@ msgstr "Ordrens aktuelle status i dens livscyklus"
|
|||
msgid "order status"
|
||||
msgstr "Bestillingsstatus"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"JSON-struktur af meddelelser, der skal vises til brugerne, i admin UI bruges"
|
||||
|
|
@ -1266,56 +1266,60 @@ msgstr "menneskeligt læsbart ID"
|
|||
msgid "order"
|
||||
msgstr "Bestil"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "En bruger må kun have én afventende ordre ad gangen!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "Du kan ikke tilføje produkter til en ordre, der ikke er i gang."
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "Du kan ikke tilføje inaktive produkter til en ordre"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "Du kan ikke tilføje flere produkter, end der er på lager"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} findes ikke: {product_uuid}."
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr ""
|
||||
"Du kan ikke fjerne produkter fra en ordre, der ikke er en igangværende "
|
||||
"ordre."
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} findes ikke med forespørgsel <{query}>."
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Promokode findes ikke"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr "Du kan ikke købe i øjeblikket, prøv venligst igen om et par minutter."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Ugyldig kraftværdi"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "Du kan ikke købe en tom ordre!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Utilstrækkelige midler til at gennemføre ordren"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1323,189 +1327,189 @@ msgstr ""
|
|||
"du kan ikke købe uden registrering, angiv venligst følgende oplysninger: "
|
||||
"kundens navn, kundens e-mail, kundens telefonnummer"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Ugyldig betalingsmetode"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"Du kan ikke oprette en momental-ordre uden at angive en faktureringsadresse."
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "Den pris, som kunden har betalt for dette produkt på købstidspunktet"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Købspris på bestillingstidspunktet"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr "Interne kommentarer til administratorer om dette bestilte produkt"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Interne kommentarer"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Notifikationer til brugere"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "JSON-repræsentation af dette elements attributter"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Bestilte produktattributter"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Henvisning til den overordnede ordre, der indeholder dette produkt"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Forældreordre"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "Det specifikke produkt, der er knyttet til denne ordrelinje"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Mængde af dette specifikke produkt i ordren"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Produktmængde"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Aktuel status for dette produkt i bestillingen"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Status for produktlinje"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Intern tag-identifikator for produkttagget"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Tag-navn"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Brugervenligt navn til produktmærket"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Navn på tag-visning"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Produktmærke"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr "Giv alternativ tekst til billedet af hensyn til tilgængeligheden"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Billedets alt-tekst"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Upload billedfilen til dette produkt"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Produktbillede"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Bestemmer den rækkefølge, billederne vises i"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Skærm-prioritet"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "Det produkt, som dette billede repræsenterer"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Produktbilleder"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Unik kode, der bruges af en bruger til at indløse en rabat"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Identifikator for kampagnekode"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "Fast rabatbeløb anvendes, hvis procent ikke bruges"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Fast rabatbeløb"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "Procentvis rabat, hvis det faste beløb ikke bruges"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Procentvis rabat"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Tidsstempel, når promokoden udløber"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Slut gyldighedstid"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Tidsstempel, hvorfra denne promokode er gyldig"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Start gyldighedstid"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"Tidsstempel, hvor promokoden blev brugt, blank, hvis den ikke er brugt endnu"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Tidsstempel for brug"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Bruger tildelt denne promokode, hvis relevant"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Tildelt bruger"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Kampagnekode"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Kampagnekoder"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1513,140 +1517,140 @@ msgstr ""
|
|||
"Der skal kun defineres én type rabat (beløb eller procent), men ikke begge "
|
||||
"eller ingen af dem."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Promokoden er allerede blevet brugt"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Ugyldig rabattype for promokode {self.uuid}."
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Procentvis rabat for de valgte produkter"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Rabatprocent"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Giv et unikt navn til denne kampagne"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Navn på kampagne"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Beskrivelse af kampagnen"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Vælg, hvilke produkter der er inkluderet i denne kampagne"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Inkluderede produkter"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Forfremmelse"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "Den leverandør, der leverer dette produkt, lagerfører"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Tilknyttet leverandør"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Endelig pris til kunden efter tillæg"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Salgspris"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "Det produkt, der er knyttet til denne lagerpost"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "Den pris, der er betalt til sælgeren for dette produkt"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Leverandørens købspris"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Tilgængelig mængde af produktet på lager"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Antal på lager"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "Leverandørtildelt SKU til identifikation af produktet"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "Leverandørens SKU"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Digital fil knyttet til dette lager, hvis relevant"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Digital fil"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Lagerposteringer"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Produkter, som brugeren har markeret som ønskede"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Bruger, der ejer denne ønskeliste"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Ønskelistens ejer"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Ønskeliste"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Download"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Downloads"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "Du kan ikke downloade et digitalt aktiv for en ikke-færdiggjort ordre"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Dokumentarfilm"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Dokumentarfilm"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Uafklaret"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -83,7 +83,7 @@ msgstr "Bild"
|
|||
msgid "images"
|
||||
msgstr "Bilder"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Lagerbestand"
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ msgstr "Lagerbestand"
|
|||
msgid "stocks"
|
||||
msgstr "Bestände"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -99,35 +99,35 @@ msgstr "Bestände"
|
|||
msgid "price"
|
||||
msgstr "Preis"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Produktbewertung"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Grundlegende Informationen"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Wichtige Termine"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Übersetzungen"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Produkt bestellen"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Produkte bestellen"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Ist Business"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Konfigurieren Sie"
|
||||
|
||||
|
|
@ -522,57 +522,57 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Alle Produkte auflisten (einfache Ansicht)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(genaue) Produkt-UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(icontains) Produktname"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr ""
|
||||
"(Liste) Kategorienamen, Groß- und Kleinschreibung wird nicht berücksichtigt"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(genau) Kategorie UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr ""
|
||||
"(Liste) Tag-Namen, Groß- und Kleinschreibung wird nicht berücksichtigt"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Mindestaktienkurs"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Maximaler Aktienkurs"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(genau) Nur aktive Produkte"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Markenname"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Mindestlagermenge"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(genau) Produktausschnitt"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(genau) Digital vs. physisch"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -580,37 +580,37 @@ msgstr ""
|
|||
"Durch Kommata getrennte Liste der Felder, nach denen sortiert werden soll. Präfix mit \"-\" für absteigend. \n"
|
||||
"**Erlaubt:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Ein einzelnes Produkt abrufen (Detailansicht)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "Produkt UUID oder Slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Ein Produkt erstellen"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Umschreiben eines bestehenden Produkts unter Beibehaltung nicht editierbarer"
|
||||
" Felder"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Einige Felder eines bestehenden Produkts aktualisieren, nicht editierbare "
|
||||
"Felder beibehalten"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Ein Produkt löschen"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "Kein Suchbegriff angegeben."
|
||||
|
||||
|
|
@ -667,7 +667,7 @@ msgstr ""
|
|||
"sich gegenseitig aus!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "Von der Methode order.buy() kam der falsche Typ: {type(instance)!s}"
|
||||
|
||||
|
|
@ -858,7 +858,7 @@ msgstr "Promocodes"
|
|||
msgid "products on sale"
|
||||
msgstr "Zum Verkauf stehende Produkte"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Werbeaktionen"
|
||||
|
||||
|
|
@ -874,11 +874,11 @@ msgstr "Anbieter"
|
|||
msgid "product"
|
||||
msgstr "Produkt"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Auf dem Wunschzettel stehende Produkte"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Wunschzettel"
|
||||
|
||||
|
|
@ -1026,8 +1026,8 @@ msgid "the specific product associated with this attribute's value"
|
|||
msgstr ""
|
||||
"Das spezifische Produkt, das mit dem Wert dieses Attributs verbunden ist"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Zugehöriges Produkt"
|
||||
|
||||
|
|
@ -1126,7 +1126,7 @@ msgstr "Optional können Sie dieses Produkt mit einer Marke verknüpfen"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Tags, die helfen, dieses Produkt zu beschreiben oder zu gruppieren"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Produkt-Tags"
|
||||
|
||||
|
|
@ -1147,7 +1147,7 @@ msgstr ""
|
|||
msgid "product name"
|
||||
msgstr "Name des Produkts"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Fügen Sie eine detaillierte Beschreibung des Produkts hinzu"
|
||||
|
||||
|
|
@ -1250,7 +1250,7 @@ msgstr "Aktueller Status des Auftrags in seinem Lebenszyklus"
|
|||
msgid "order status"
|
||||
msgstr "Status der Bestellung"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"JSON-Struktur der Benachrichtigungen, die den Benutzern angezeigt werden "
|
||||
|
|
@ -1288,60 +1288,64 @@ msgstr "menschenlesbare ID"
|
|||
msgid "order"
|
||||
msgstr "Bestellung"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "Ein Benutzer darf immer nur einen schwebenden Auftrag haben!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr ""
|
||||
"Sie können keine Produkte zu einem Auftrag hinzufügen, der nicht in "
|
||||
"Bearbeitung ist."
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "Sie können keine inaktiven Produkte zur Bestellung hinzufügen"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "Sie können nicht mehr Produkte hinzufügen, als auf Lager sind"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} existiert nicht: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr ""
|
||||
"Sie können keine Produkte aus einer Bestellung entfernen, die nicht in "
|
||||
"Bearbeitung ist."
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} existiert nicht mit Abfrage <{query}>"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Promocode existiert nicht"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"Sie können im Moment nicht kaufen, bitte versuchen Sie es in ein paar "
|
||||
"Minuten erneut."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Ungültiger Force-Wert"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "Sie können keine leere Bestellung kaufen!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Unzureichende Mittel für die Ausführung des Auftrags"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1349,198 +1353,198 @@ msgstr ""
|
|||
"Sie können nicht ohne Registrierung kaufen, bitte geben Sie die folgenden "
|
||||
"Informationen an: Kundenname, Kunden-E-Mail, Kunden-Telefonnummer"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Ungültige Zahlungsmethode"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"Sie können keine kurzfristige Bestellung ohne Angabe einer Rechnungsadresse "
|
||||
"aufgeben."
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr ""
|
||||
"Der Preis, den der Kunde zum Zeitpunkt des Kaufs für dieses Produkt bezahlt "
|
||||
"hat"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Einkaufspreis zum Zeitpunkt der Bestellung"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr "Interne Kommentare für Administratoren zu diesem bestellten Produkt"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Interne Kommentare"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Benutzerbenachrichtigungen"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "JSON-Darstellung der Attribute dieses Artikels"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Bestellte Produktattribute"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Verweis auf den übergeordneten Auftrag, der dieses Produkt enthält"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Übergeordneter Auftrag"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "Das spezifische Produkt, das mit dieser Auftragszeile verbunden ist"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Menge dieses spezifischen Produkts in der Bestellung"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Produktmenge"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Aktueller Status dieses Produkts im Auftrag"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Status der Produktlinie"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Interner Tag-Identifikator für das Produkt-Tag"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Tag name"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Benutzerfreundlicher Name für den Produktanhänger"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Tag-Anzeigename"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Produkt-Tag"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr ""
|
||||
"Geben Sie einen alternativen Text für das Bild an, um die Barrierefreiheit "
|
||||
"zu gewährleisten."
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Bild-Alt-Text"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Laden Sie die Bilddatei für dieses Produkt hoch"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Produktbild"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Legt die Reihenfolge fest, in der die Bilder angezeigt werden"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Priorität anzeigen"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "Das Produkt, das dieses Bild darstellt"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Produktbilder"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr ""
|
||||
"Einzigartiger Code, den ein Nutzer zum Einlösen eines Rabatts verwendet"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Kennung des Promo-Codes"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr ""
|
||||
"Fester Rabattbetrag, der angewandt wird, wenn kein Prozentsatz verwendet "
|
||||
"wird"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Fester Rabattbetrag"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "Prozentualer Rabatt, wenn der Festbetrag nicht verwendet wird"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Prozentualer Rabatt"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Zeitstempel, wann der Promocode abläuft"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Ende der Gültigkeitsdauer"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Zeitstempel, ab dem dieser Promocode gültig ist"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Beginn der Gültigkeitsdauer"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"Zeitstempel, wann der Promocode verwendet wurde, leer, wenn noch nicht "
|
||||
"verwendet"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Zeitstempel der Verwendung"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Diesem Promocode zugewiesener Benutzer, falls zutreffend"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Zugewiesener Benutzer"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Promo-Code"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Promo-Codes"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1548,143 +1552,143 @@ msgstr ""
|
|||
"Es sollte nur eine Art von Rabatt definiert werden (Betrag oder "
|
||||
"Prozentsatz), aber nicht beides oder keines von beiden."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Promocode wurde bereits verwendet"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Ungültiger Rabatttyp für Promocode {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Prozentualer Rabatt für die ausgewählten Produkte"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Prozentsatz der Ermäßigung"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Geben Sie einen eindeutigen Namen für diese Aktion an"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Name der Aktion"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Promotion description"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Wählen Sie aus, welche Produkte in dieser Aktion enthalten sind"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Enthaltene Produkte"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Förderung"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "Der Verkäufer, der dieses Produkt liefert, hat folgende Bestände"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Zugehöriger Anbieter"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Endpreis für den Kunden nach Aufschlägen"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Verkaufspreis"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "Das mit diesem Bestandseintrag verbundene Produkt"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "Der an den Verkäufer gezahlte Preis für dieses Produkt"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Einkaufspreis des Verkäufers"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Verfügbare Menge des Produkts auf Lager"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Vorrätige Menge"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "Vom Hersteller zugewiesene SKU zur Identifizierung des Produkts"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "SKU des Verkäufers"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr ""
|
||||
"Digitale Datei, die mit diesem Bestand verbunden ist, falls zutreffend"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Digitale Datei"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Bestandseinträge"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Produkte, die der Benutzer als gewünscht markiert hat"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Benutzer, dem diese Wunschliste gehört"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Besitzer der Wishlist"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Wunschzettel"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Herunterladen"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Herunterladen"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr ""
|
||||
"Sie können kein digitales Asset für eine nicht abgeschlossene Bestellung "
|
||||
"herunterladen"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Dokumentarfilm"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Dokumentarfilme"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Ungelöst"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -81,7 +81,7 @@ msgstr "Image"
|
|||
msgid "images"
|
||||
msgstr "Images"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Stock"
|
||||
|
||||
|
|
@ -89,7 +89,7 @@ msgstr "Stock"
|
|||
msgid "stocks"
|
||||
msgstr "Stocks"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -97,35 +97,35 @@ msgstr "Stocks"
|
|||
msgid "price"
|
||||
msgstr "Price"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Rating"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Basic Info"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Important Dates"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Translations"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Order Product"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Order Products"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Is Business"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Config"
|
||||
|
||||
|
|
@ -489,55 +489,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "List all products (simple view)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(exact) Product UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(icontains) Product name"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(list) Category names, case-insensitive"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(exact) Category UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(list) Tag names, case-insensitive"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Minimum stock price"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Maximum stock price"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(exact) Only active products"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Brand name"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Minimum stock quantity"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(exact) Product slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(exact) Digital vs. physical"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -545,34 +545,34 @@ msgstr ""
|
|||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Retrieve a single product (detailed view)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "Product UUID or Slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Create a product"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "Rewrite an existing product, preserving non-editable fields"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Update some fields of an existing product, preserving non-editable fields"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Delete a product"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "No search term provided."
|
||||
|
||||
|
|
@ -627,7 +627,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "Please provide either order_uuid or order_hr_id - mutually exclusive!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "Wrong type came from order.buy() method: {type(instance)!s}"
|
||||
|
||||
|
|
@ -815,7 +815,7 @@ msgstr "Promocodes"
|
|||
msgid "products on sale"
|
||||
msgstr "Products on sale"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Promotions"
|
||||
|
||||
|
|
@ -831,11 +831,11 @@ msgstr "Vendor"
|
|||
msgid "product"
|
||||
msgstr "Product"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Wishlisted products"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Wishlists"
|
||||
|
||||
|
|
@ -981,8 +981,8 @@ msgstr "Attribute of this value"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "The specific product associated with this attribute's value"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Associated product"
|
||||
|
||||
|
|
@ -1078,7 +1078,7 @@ msgstr "Optionally associate this product with a brand"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Tags that help describe or group this product"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Product tags"
|
||||
|
||||
|
|
@ -1098,7 +1098,7 @@ msgstr "Provide a clear identifying name for the product"
|
|||
msgid "product name"
|
||||
msgstr "Product name"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Add a detailed description of the product"
|
||||
|
||||
|
|
@ -1197,7 +1197,7 @@ msgstr "Current status of the order in its lifecycle"
|
|||
msgid "order status"
|
||||
msgstr "Order status"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"JSON structure of notifications to display to users, in admin UI the table-"
|
||||
|
|
@ -1235,55 +1235,59 @@ msgstr "human-readable ID"
|
|||
msgid "order"
|
||||
msgstr "Order"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "A user must have only one pending order at a time!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "You cannot add products to an order that is not a pending one"
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "You cannot add inactive products to order"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "You cannot add more products than available in stock"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} does not exist: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr "You cannot remove products from an order that is not a pending one"
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} does not exist with query <{query}>"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Promocode does not exist"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"You can not purchase at this moment, please try again in a few minutes."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Invalid force value"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "You cannot purchase an empty order!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Insufficient funds to complete the order"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1291,188 +1295,188 @@ msgstr ""
|
|||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Invalid payment method"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"you cannot create a momental order without providing a billing address"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "The price paid by the customer for this product at purchase time"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Purchase price at order time"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr "Internal comments for admins about this ordered product"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Internal comments"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "User notifications"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "JSON representation of this item's attributes"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Ordered product attributes"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Reference to the parent order that contains this product"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Parent order"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "The specific product associated with this order line"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Quantity of this specific product in the order"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Product quantity"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Current status of this product in the order"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Product line status"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Internal tag identifier for the product tag"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Tag name"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "User-friendly name for the product tag"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Tag display name"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Product tag"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr "Provide alternative text for the image for accessibility"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Image alt text"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Upload the image file for this product"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Product image"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Determines the order in which images are displayed"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Display priority"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "The product that this image represents"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Product images"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Unique code used by a user to redeem a discount"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Promo code identifier"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "Fixed discount amount applied if percent is not used"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Fixed discount amount"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "Percentage discount applied if fixed amount is not used"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Percentage discount"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Timestamp when the promocode expires"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "End validity time"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Timestamp from which this promocode is valid"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Start validity time"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr "Timestamp when the promocode was used, blank if not used yet"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Usage timestamp"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "User assigned to this promocode if applicable"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Assigned user"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Promo code"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Promo codes"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1480,140 +1484,140 @@ msgstr ""
|
|||
"Only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Promocode has been used already"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Invalid discount type for promocode {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Percentage discount for the selected products"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Discount percentage"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Provide a unique name for this promotion"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Promotion name"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Promotion description"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Select which products are included in this promotion"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Included products"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Promotion"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "The vendor supplying this product stock"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Associated vendor"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Final price to the customer after markups"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Selling price"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "The product associated with this stock entry"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "The price paid to the vendor for this product"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Vendor purchase price"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Available quantity of the product in stock"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Quantity in stock"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "Vendor-assigned SKU for identifying the product"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "Vendor's SKU"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Digital file associated with this stock if applicable"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Digital file"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Stock entries"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Products that the user has marked as wanted"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "User who owns this wishlist"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Wishlist's Owner"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Wishlist"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Download"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Downloads"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "You can not download a digital asset for a non-finished order"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Documentary"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Documentaries"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Unresolved"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -81,7 +81,7 @@ msgstr "Image"
|
|||
msgid "images"
|
||||
msgstr "Images"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Stock"
|
||||
|
||||
|
|
@ -89,7 +89,7 @@ msgstr "Stock"
|
|||
msgid "stocks"
|
||||
msgstr "Stocks"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -97,35 +97,35 @@ msgstr "Stocks"
|
|||
msgid "price"
|
||||
msgstr "Price"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Product rating"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Basic Info"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Important dates"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Translations"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Order Product"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Order Products"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Is Business"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Config"
|
||||
|
||||
|
|
@ -489,55 +489,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "List all products (simple view)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(exact) Product UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(icontains) Product name"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(list) Category names, case-insensitive"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(exact) Category UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(list) Tag names, case-insensitive"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Minimum stock price"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Maximum stock price"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(exact) Only active products"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Brand name"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Minimum stock quantity"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(exact) Product slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(exact) Digital vs. physical"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -545,34 +545,34 @@ msgstr ""
|
|||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Retrieve a single product (detailed view)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "Product UUID or Slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Create a product"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "Rewrite an existing product, preserving non-editable fields"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Update some fields of an existing product, preserving non-editable fields"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Delete a product"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "No search term provided."
|
||||
|
||||
|
|
@ -627,7 +627,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "Please provide either order_uuid or order_hr_id - mutually exclusive!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "Wrong type came from order.buy() method: {type(instance)!s}"
|
||||
|
||||
|
|
@ -815,7 +815,7 @@ msgstr "Promocodes"
|
|||
msgid "products on sale"
|
||||
msgstr "Products on sale"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Promotions"
|
||||
|
||||
|
|
@ -831,11 +831,11 @@ msgstr "Vendor"
|
|||
msgid "product"
|
||||
msgstr "Product"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Wishlisted products"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Wishlists"
|
||||
|
||||
|
|
@ -981,8 +981,8 @@ msgstr "Attribute of this value"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "The specific product associated with this attribute's value"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Associated product"
|
||||
|
||||
|
|
@ -1078,7 +1078,7 @@ msgstr "Optionally associate this product with a brand"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Tags that help describe or group this product"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Product tags"
|
||||
|
||||
|
|
@ -1098,7 +1098,7 @@ msgstr "Provide a clear identifying name for the product"
|
|||
msgid "product name"
|
||||
msgstr "Product name"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Add a detailed description of the product"
|
||||
|
||||
|
|
@ -1197,7 +1197,7 @@ msgstr "Current status of the order in its lifecycle"
|
|||
msgid "order status"
|
||||
msgstr "Order status"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"JSON structure of notifications to display to users, in admin UI the table-"
|
||||
|
|
@ -1235,55 +1235,59 @@ msgstr "human-readable ID"
|
|||
msgid "order"
|
||||
msgstr "Order"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "A user must have only one pending order at a time!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "You cannot add products to an order that is not a pending one"
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "You cannot add inactive products to order"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "You cannot add more products than available in stock"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} does not exist: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr "You cannot remove products from an order that is not a pending one"
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} does not exist with query <{query}>"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Promocode does not exist"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"You can not purchase at this moment, please try again in a few minutes."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Invalid force value"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "You cannot purchase an empty order!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Insufficient funds to complete the order"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1291,188 +1295,188 @@ msgstr ""
|
|||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Invalid payment method"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"you cannot create a momental order without providing a billing address"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "The price paid by the customer for this product at purchase time"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Purchase price at order time"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr "Internal comments for admins about this ordered product"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Internal comments"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "User notifications"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "JSON representation of this item's attributes"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Ordered product attributes"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Reference to the parent order that contains this product"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Parent order"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "The specific product associated with this order line"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Quantity of this specific product in the order"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Product quantity"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Current status of this product in the order"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Product line status"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Internal tag identifier for the product tag"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Tag name"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "User-friendly name for the product tag"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Tag display name"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Product tag"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr "Provide alternative text for the image for accessibility"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Image alt text"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Upload the image file for this product"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Product image"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Determines the order in which images are displayed"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Display priority"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "The product that this image represents"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Product images"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Unique code used by a user to redeem a discount"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Promo code identifier"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "Fixed discount amount applied if percent is not used"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Fixed discount amount"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "Percentage discount applied if fixed amount is not used"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Percentage discount"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Timestamp when the promocode expires"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "End validity time"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Timestamp from which this promocode is valid"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Start validity time"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr "Timestamp when the promocode was used, blank if not used yet"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Usage timestamp"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "User assigned to this promocode if applicable"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Assigned user"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Promo code"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Promo codes"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1480,140 +1484,140 @@ msgstr ""
|
|||
"Only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Promocode has been used already"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Invalid discount type for promocode {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Percentage discount for the selected products"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Discount percentage"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Provide a unique name for this promotion"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Promotion name"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Promotion description"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Select which products are included in this promotion"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Included products"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Promotion"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "The vendor supplying this product stock"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Associated vendor"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Final price to the customer after markups"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Selling price"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "The product associated with this stock entry"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "The price paid to the vendor for this product"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Vendor purchase price"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Available quantity of the product in stock"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Quantity in stock"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "Vendor-assigned SKU for identifying the product"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "Vendor's SKU"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Digital file associated with this stock if applicable"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Digital file"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Stock entries"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Products that the user has marked as wanted"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "User who owns this wishlist"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Wishlist's Owner"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Wishlist"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Download"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Downloads"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "You can not download a digital asset for a non-finished order"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Documentary"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Documentaries"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Unresolved"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -83,7 +83,7 @@ msgstr "Imagen"
|
|||
msgid "images"
|
||||
msgstr "Imágenes"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Stock"
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ msgstr "Stock"
|
|||
msgid "stocks"
|
||||
msgstr "Acciones"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -99,35 +99,35 @@ msgstr "Acciones"
|
|||
msgid "price"
|
||||
msgstr "Precio"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Valoración del producto"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Información básica"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Fechas importantes"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Traducciones"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Pedir un producto"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Pedir productos"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Es Negocio"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Configurar"
|
||||
|
||||
|
|
@ -513,57 +513,57 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Listar todos los productos (vista simple)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "UUID (exacto) del producto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(icontains) Nombre del producto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr ""
|
||||
"(lista) Nombres de categoría, sin distinción entre mayúsculas y minúsculas"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(exacto) Categoría UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr ""
|
||||
"(lista) Nombres de etiquetas, sin distinción entre mayúsculas y minúsculas"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Precio mínimo de las acciones"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Precio máximo de las acciones"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(exacto) Sólo productos activos"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Marca"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Cantidad mínima de existencias"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(exacto) Babosa del producto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(exacto) Digital frente a físico"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -571,35 +571,35 @@ msgstr ""
|
|||
"Lista separada por comas de campos por los que ordenar. Prefiérela con `-` para que sea descendente. \n"
|
||||
"**Permitido:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Recuperar un solo producto (vista detallada)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "UUID o babosa del producto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Crear un producto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "Reescribir un producto existente conservando los campos no editables"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Actualizar algunos campos de un producto existente, conservando los campos "
|
||||
"no editables"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Eliminar un producto"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "No se proporciona ningún término de búsqueda."
|
||||
|
||||
|
|
@ -654,7 +654,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "Indique order_uuid o order_hr_id, ¡se excluyen mutuamente!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr ""
|
||||
"Tipo incorrecto proveniente del método order.buy(): {type(instance)!s}"
|
||||
|
|
@ -847,7 +847,7 @@ msgstr "Códigos promocionales"
|
|||
msgid "products on sale"
|
||||
msgstr "Productos a la venta"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Promociones"
|
||||
|
||||
|
|
@ -863,11 +863,11 @@ msgstr "Vendedor"
|
|||
msgid "product"
|
||||
msgstr "Producto"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Productos deseados"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Listas de deseos"
|
||||
|
||||
|
|
@ -1014,8 +1014,8 @@ msgstr "Atributo de este valor"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "El producto específico asociado al valor de este atributo"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Producto asociado"
|
||||
|
||||
|
|
@ -1111,7 +1111,7 @@ msgstr "Si lo desea, puede asociar este producto a una marca"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Etiquetas que ayudan a describir o agrupar este producto"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Etiquetas del producto"
|
||||
|
||||
|
|
@ -1131,7 +1131,7 @@ msgstr "Proporcionar un nombre que identifique claramente el producto"
|
|||
msgid "product name"
|
||||
msgstr "Nombre del producto"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Añada una descripción detallada del producto"
|
||||
|
||||
|
|
@ -1234,7 +1234,7 @@ msgstr "Estado actual del pedido en su ciclo de vida"
|
|||
msgid "order status"
|
||||
msgstr "Estado del pedido"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"Estructura JSON de las notificaciones para mostrar a los usuarios, en la "
|
||||
|
|
@ -1272,56 +1272,60 @@ msgstr "ID legible por humanos"
|
|||
msgid "order"
|
||||
msgstr "Pida"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "Un usuario sólo puede tener una orden pendiente a la vez."
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "No puede añadir productos a un pedido que no esté pendiente"
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "No se pueden añadir productos inactivos al pedido"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "No puede añadir más productos de los disponibles en stock"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} no existe: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr "No puede eliminar productos de un pedido que no esté pendiente"
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} no existe con la consulta <{query}>"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Promocode no existe"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"No puede comprar en este momento, por favor inténtelo de nuevo en unos "
|
||||
"minutos."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Valor de fuerza no válido"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "No se puede comprar un pedido vacío."
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Fondos insuficientes para completar el pedido"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1329,192 +1333,192 @@ msgstr ""
|
|||
"no puede comprar sin registrarse, facilite la siguiente información: nombre "
|
||||
"del cliente, correo electrónico del cliente, número de teléfono del cliente"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Método de pago no válido"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"no puede crear un pedido momental sin indicar una dirección de facturación"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr ""
|
||||
"El precio pagado por el cliente por este producto en el momento de la compra"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Precio de compra en el momento del pedido"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr ""
|
||||
"Comentarios internos para los administradores sobre este producto solicitado"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Comentarios internos"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Notificaciones a los usuarios"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "Representación JSON de los atributos de este elemento"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Atributos ordenados del producto"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Referencia al pedido principal que contiene este producto"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Orden de los padres"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "El producto específico asociado a esta línea de pedido"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Cantidad de este producto específico en el pedido"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Cantidad de productos"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Estado actual de este producto en el pedido"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Estado de la línea de productos"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Identificador interno de la etiqueta del producto"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Nombre de la etiqueta"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Nombre fácil de usar para la etiqueta del producto"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Nombre de la etiqueta"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Etiqueta del producto"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr ""
|
||||
"Proporcione un texto alternativo para la imagen en aras de la accesibilidad"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Texto alternativo de la imagen"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Cargar el archivo de imagen para este producto"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Imagen del producto"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Determina el orden de visualización de las imágenes"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Prioridad de visualización"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "El producto que representa esta imagen"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Imágenes de productos"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Código único utilizado por un usuario para canjear un descuento"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Promo code identifier"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "Se aplica un descuento fijo si no se utiliza el porcentaje"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Importe fijo del descuento"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "Porcentaje de descuento aplicado si no se utiliza el importe fijo"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Porcentaje de descuento"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Fecha de caducidad del promocode"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Hora de fin de validez"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Fecha a partir de la cual es válido este promocode"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Hora de inicio de validez"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"Fecha en la que se utilizó el promocode, en blanco si aún no se ha utilizado"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Marca de tiempo de uso"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Usuario asignado a este promocode si procede"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Usuario asignado"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Promo code"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Promo codes"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1522,140 +1526,140 @@ msgstr ""
|
|||
"Sólo debe definirse un tipo de descuento (importe o porcentaje), pero no "
|
||||
"ambos ni ninguno."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "El código promocional ya ha sido utilizado"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Tipo de descuento no válido para promocode {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Porcentaje de descuento para los productos seleccionados"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Porcentaje de descuento"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Proporcione un nombre único para esta promoción"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Nombre de la promoción"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Descripción de la promoción"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Seleccione los productos incluidos en esta promoción"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Productos incluidos"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Promoción"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "El vendedor que suministra este producto dispone de"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Proveedor asociado"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Precio final al cliente después de márgenes"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Precio de venta"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "El producto asociado a esta entrada en stock"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "El precio pagado al vendedor por este producto"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Precio de compra al vendedor"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Cantidad disponible del producto en stock"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Cantidad en stock"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "SKU asignada por el proveedor para identificar el producto"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "SKU del vendedor"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Archivo digital asociado a esta acción, si procede"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Archivo digital"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Entradas en existencias"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Productos que el usuario ha marcado como deseados"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Usuario propietario de esta lista de deseos"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Propietario de Wishlist"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Lista de deseos"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Descargar"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Descargas"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "No puede descargar un activo digital para un pedido no finalizado"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Documental"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Documentaries"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Sin resolver"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -83,7 +83,7 @@ msgstr "Image"
|
|||
msgid "images"
|
||||
msgstr "Images"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Stock"
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ msgstr "Stock"
|
|||
msgid "stocks"
|
||||
msgstr "Stocks"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -99,35 +99,35 @@ msgstr "Stocks"
|
|||
msgid "price"
|
||||
msgstr "Prix"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Evaluation du produit"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Informations de base"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Important Dates"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Traductions"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Commander un produit"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Commander des produits"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Est l'entreprise"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Config"
|
||||
|
||||
|
|
@ -519,55 +519,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Liste de tous les produits (vue simple)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "UUID (exact) du produit"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(icontains) Nom du produit"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(liste) Noms de catégories, insensibles à la casse"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "UUID (exact) de la catégorie"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(liste) Noms d'étiquettes, insensibles à la casse"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Prix minimum de l'action"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Prix maximum de l'action"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(exact) Uniquement les produits actifs"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Nom de marque"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Quantité minimale en stock"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "UUID ou Slug du produit"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(exact) Numérique ou physique"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -575,35 +575,35 @@ msgstr ""
|
|||
"Liste de champs séparés par des virgules à trier. Préfixer avec `-` pour un tri descendant. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Récupérer un seul produit (vue détaillée)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "UUID ou Slug du produit"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Créer un produit"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "Réécrire un produit existant en préservant les champs non modifiables"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Mettre à jour certains champs d'un produit existant, en préservant les "
|
||||
"champs non modifiables"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Supprimer un produit"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "Aucun terme de recherche n'est fourni."
|
||||
|
||||
|
|
@ -660,7 +660,7 @@ msgstr ""
|
|||
"mutuellement !"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr ""
|
||||
"Le mauvais type provient de la méthode order.buy() : {type(instance)!s}"
|
||||
|
|
@ -852,7 +852,7 @@ msgstr "Promocodes"
|
|||
msgid "products on sale"
|
||||
msgstr "Produits en vente"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Promotions"
|
||||
|
||||
|
|
@ -868,11 +868,11 @@ msgstr "Vendeur"
|
|||
msgid "product"
|
||||
msgstr "Produit"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Produits en liste de souhaits"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Liste de souhaits"
|
||||
|
||||
|
|
@ -1020,8 +1020,8 @@ msgstr "Attribut de cette valeur"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "Le produit spécifique associé à la valeur de cet attribut"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Produit associé"
|
||||
|
||||
|
|
@ -1118,7 +1118,7 @@ msgstr "Possibilité d'associer ce produit à une marque"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Étiquettes permettant de décrire ou de regrouper ce produit"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Étiquettes du produit"
|
||||
|
||||
|
|
@ -1138,7 +1138,7 @@ msgstr "Fournir un nom d'identification clair pour le produit"
|
|||
msgid "product name"
|
||||
msgstr "Nom du produit"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Ajouter une description détaillée du produit"
|
||||
|
||||
|
|
@ -1240,7 +1240,7 @@ msgstr "Statut actuel de la commande dans son cycle de vie"
|
|||
msgid "order status"
|
||||
msgstr "Statut de la commande"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"Structure JSON des notifications à afficher aux utilisateurs ; dans "
|
||||
|
|
@ -1278,61 +1278,65 @@ msgstr "ID lisible par l'homme"
|
|||
msgid "order"
|
||||
msgstr "Commande"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "Un utilisateur ne peut avoir qu'un seul ordre en cours à la fois !"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr ""
|
||||
"Vous ne pouvez pas ajouter de produits à une commande qui n'est pas en "
|
||||
"cours."
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "Vous ne pouvez pas ajouter des produits inactifs à la commande"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr ""
|
||||
"Vous ne pouvez pas ajouter plus de produits que ceux disponibles en stock"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} n'existe pas : {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr ""
|
||||
"Vous ne pouvez pas retirer des produits d'une commande qui n'est pas en "
|
||||
"cours."
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} n'existe pas avec la requête <{query}>"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Le code promotionnel n'existe pas"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"Vous ne pouvez pas acheter en ce moment, veuillez réessayer dans quelques "
|
||||
"minutes."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Valeur de force non valide"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "Vous ne pouvez pas acheter une commande vide !"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Insuffisance de fonds pour compléter la commande"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1341,195 +1345,195 @@ msgstr ""
|
|||
"informations suivantes : nom du client, courriel du client, numéro de "
|
||||
"téléphone du client"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Méthode de paiement non valide"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"vous ne pouvez pas créer une commande momentanée sans fournir d'adresse de "
|
||||
"facturation"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "Le prix payé par le client pour ce produit au moment de l'achat"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Prix d'achat au moment de la commande"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr ""
|
||||
"Commentaires internes pour les administrateurs sur ce produit commandé"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Commentaires internes"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Notifications aux utilisateurs"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "Représentation JSON des attributs de cet élément"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Attributs du produit ordonnés"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Référence à l'ordre parent qui contient ce produit"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Ordonnance parentale"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "Le produit spécifique associé à cette ligne de commande"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Quantité de ce produit spécifique dans la commande"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Quantité de produits"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Statut actuel de ce produit dans la commande"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Statut de la ligne de produits"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Identifiant interne de l'étiquette du produit"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Nom du jour"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Nom convivial pour l'étiquette du produit"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Nom d'affichage de l'étiquette"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Étiquette du produit"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr "Fournir un texte alternatif pour l'image afin d'en faciliter l'accès"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Texte alt de l'image"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Télécharger le fichier image pour ce produit"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Image du produit"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Détermine l'ordre d'affichage des images"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Priorité à l'affichage"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "Le produit que cette image représente"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Images du produit"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr ""
|
||||
"Code unique utilisé par un utilisateur pour bénéficier d'une réduction"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Identifiant du code promotionnel"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr ""
|
||||
"Montant fixe de la remise appliqué si le pourcentage n'est pas utilisé"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Montant de l'escompte fixe"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr ""
|
||||
"Pourcentage de réduction appliqué si le montant fixe n'est pas utilisé"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Pourcentage de réduction"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Date d'expiration du code promotionnel"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Heure de fin de validité"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Date à partir de laquelle ce code promotionnel est valable"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Heure de début de validité"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"Date à laquelle le code promotionnel a été utilisé, vide s'il n'a pas encore"
|
||||
" été utilisé."
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Horodatage de l'utilisation"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Utilisateur assigné à ce code promo, le cas échéant"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Utilisateur assigné"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Code promo"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Codes promotionnels"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1537,142 +1541,142 @@ msgstr ""
|
|||
"Un seul type de remise doit être défini (montant ou pourcentage), mais pas "
|
||||
"les deux ni aucun des deux."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Le code promotionnel a déjà été utilisé"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Type de réduction non valide pour le code promo {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Pourcentage de réduction pour les produits sélectionnés"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Pourcentage de réduction"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Donnez un nom unique à cette promotion"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Nom de la promotion"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Promotion description"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Sélectionnez les produits inclus dans cette promotion"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Produits inclus"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Promotion"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "Le vendeur qui fournit ce stock de produits"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Vendeur associé"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Prix final pour le client après majoration"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Prix de vente"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "Le produit associé à cette entrée de stock"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "Le prix payé au vendeur pour ce produit"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Prix d'achat du vendeur"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Quantité disponible du produit en stock"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Quantité en stock"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "SKU attribué par le fournisseur pour identifier le produit"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "UGS du vendeur"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Fichier numérique associé à ce stock, le cas échéant"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Fichier numérique"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Entrées de stock"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Produits que l'utilisateur a marqués comme souhaités"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Utilisateur qui possède cette liste de souhaits"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Propriétaire de la liste de souhaits"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Liste de souhaits"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Télécharger"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Téléchargements"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr ""
|
||||
"Vous ne pouvez pas télécharger un bien numérique pour une commande non "
|
||||
"terminée."
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Documentaire"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Documentaires"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Non résolu"
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
|
@ -82,7 +82,7 @@ msgstr ""
|
|||
msgid "images"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -90,7 +90,7 @@ msgstr ""
|
|||
msgid "stocks"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -98,35 +98,35 @@ msgstr ""
|
|||
msgid "price"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -471,88 +471,88 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for "
|
||||
"descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr ""
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -607,7 +607,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr ""
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -789,7 +789,7 @@ msgstr ""
|
|||
msgid "products on sale"
|
||||
msgstr ""
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -805,11 +805,11 @@ msgstr ""
|
|||
msgid "product"
|
||||
msgstr ""
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr ""
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -955,7 +955,7 @@ msgstr ""
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928 core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933 core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1051,7 +1051,7 @@ msgstr ""
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1071,7 +1071,7 @@ msgstr ""
|
|||
msgid "product name"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1167,7 +1167,7 @@ msgstr ""
|
|||
msgid "order status"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1203,379 +1203,383 @@ msgstr ""
|
|||
msgid "order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:536
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608 core/models.py:1165
|
||||
#: core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613 core/models.py:1170
|
||||
#: core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -83,7 +83,7 @@ msgstr "Immagine"
|
|||
msgid "images"
|
||||
msgstr "Immagini"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Stock"
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ msgstr "Stock"
|
|||
msgid "stocks"
|
||||
msgstr "Le scorte"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -99,35 +99,35 @@ msgstr "Le scorte"
|
|||
msgid "price"
|
||||
msgstr "Prezzo"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Valutazione del prodotto"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Informazioni di base"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Date importanti"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Traduzioni"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Ordina il prodotto"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Ordinare i prodotti"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "È Business"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Configurazione"
|
||||
|
||||
|
|
@ -519,56 +519,56 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Elenco di tutti i prodotti (visualizzazione semplice)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(esatto) UUID del prodotto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(icontains) Nome del prodotto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr ""
|
||||
"(elenco) Nomi di categoria, senza distinzione tra maiuscole e minuscole"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(esatto) UUID della categoria"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(elenco) Nomi di tag, senza distinzione tra maiuscole e minuscole"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Prezzo minimo delle azioni"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Prezzo massimo del titolo"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(esatto) Solo prodotti attivi"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Nome del marchio"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Quantità minima di scorte"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(esatto) Prodotto slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(esatto) Digitale e fisico"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -576,36 +576,36 @@ msgstr ""
|
|||
"Elenco separato da virgole dei campi da ordinare. Prefisso con `-` per l'ordinamento discendente. \n"
|
||||
"**Consentito:** uuid, rating, nome, slug, creato, modificato, prezzo, casuale"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Recuperare un singolo prodotto (vista dettagliata)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "UUID o Slug del prodotto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Creare un prodotto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Riscrivere un prodotto esistente, preservando i campi non modificabili"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Aggiornare alcuni campi di un prodotto esistente, preservando i campi non "
|
||||
"modificabili"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Eliminare un prodotto"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "Non è stato fornito alcun termine di ricerca."
|
||||
|
||||
|
|
@ -661,7 +661,7 @@ msgstr ""
|
|||
"Si prega di fornire order_uuid o order_hr_id, che si escludono a vicenda!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr ""
|
||||
"Il metodo order.buy() ha fornito un tipo sbagliato: {type(instance)!s}"
|
||||
|
|
@ -852,7 +852,7 @@ msgstr "Codici promozionali"
|
|||
msgid "products on sale"
|
||||
msgstr "Prodotti in vendita"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Promozioni"
|
||||
|
||||
|
|
@ -868,11 +868,11 @@ msgstr "Venditore"
|
|||
msgid "product"
|
||||
msgstr "Prodotto"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Prodotti desiderati"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Liste dei desideri"
|
||||
|
||||
|
|
@ -1019,8 +1019,8 @@ msgstr "Attributo di questo valore"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "Il prodotto specifico associato al valore di questo attributo"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Prodotto associato"
|
||||
|
||||
|
|
@ -1117,7 +1117,7 @@ msgstr "Associare facoltativamente questo prodotto a un marchio"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Tag che aiutano a descrivere o raggruppare questo prodotto"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Tag del prodotto"
|
||||
|
||||
|
|
@ -1137,7 +1137,7 @@ msgstr "Fornire un nome identificativo chiaro per il prodotto"
|
|||
msgid "product name"
|
||||
msgstr "Nome del prodotto"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Aggiungere una descrizione dettagliata del prodotto"
|
||||
|
||||
|
|
@ -1237,7 +1237,7 @@ msgstr "Stato attuale dell'ordine nel suo ciclo di vita"
|
|||
msgid "order status"
|
||||
msgstr "Stato dell'ordine"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"Struttura JSON delle notifiche da mostrare agli utenti; nell'interfaccia "
|
||||
|
|
@ -1275,56 +1275,60 @@ msgstr "ID leggibile dall'uomo"
|
|||
msgid "order"
|
||||
msgstr "Ordine"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "Un utente può avere un solo ordine pendente alla volta!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "Non è possibile aggiungere prodotti a un ordine che non sia in corso."
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "Non è possibile aggiungere all'ordine prodotti inattivi"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr ""
|
||||
"Non è possibile aggiungere più prodotti di quelli disponibili in magazzino"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} non esiste: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr "Non è possibile rimuovere i prodotti da un ordine che non è in corso."
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} non esiste con la query <{query}>."
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Il codice promozionale non esiste"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"In questo momento non è possibile acquistare, riprovare tra qualche minuto."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Valore di forza non valido"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "Non è possibile acquistare un ordine vuoto!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Fondi insufficienti per completare l'ordine"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1333,194 +1337,194 @@ msgstr ""
|
|||
"seguenti informazioni: nome del cliente, email del cliente, numero di "
|
||||
"telefono del cliente"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Metodo di pagamento non valido"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"non è possibile creare un ordine momentaneo senza fornire un indirizzo di "
|
||||
"fatturazione"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr ""
|
||||
"Il prezzo pagato dal cliente per questo prodotto al momento dell'acquisto."
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Prezzo di acquisto al momento dell'ordine"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr "Commenti interni per gli amministratori su questo prodotto ordinato"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Commenti interni"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Notifiche degli utenti"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "Rappresentazione JSON degli attributi di questo elemento"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Attributi del prodotto ordinati"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Riferimento all'ordine padre che contiene questo prodotto"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Ordine dei genitori"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "Il prodotto specifico associato a questa riga d'ordine"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Quantità di questo prodotto specifico nell'ordine"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Quantità di prodotto"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Stato attuale di questo prodotto nell'ordine"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Stato della linea di prodotti"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Identificatore interno dell'etichetta del prodotto"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Nome del tag"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Nome intuitivo per l'etichetta del prodotto"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Nome del tag"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Etichetta del prodotto"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr ""
|
||||
"Fornire un testo alternativo per l'immagine ai fini dell'accessibilità."
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Testo alt dell'immagine"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Caricare il file immagine per questo prodotto"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Immagine del prodotto"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Determina l'ordine di visualizzazione delle immagini"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Priorità del display"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "Il prodotto che questa immagine rappresenta"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Immagini del prodotto"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Codice univoco utilizzato da un utente per riscattare uno sconto"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Identificatore del codice promozionale"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr ""
|
||||
"Importo fisso dello sconto applicato se non si utilizza la percentuale"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Importo fisso dello sconto"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "Sconto percentuale applicato se l'importo fisso non viene utilizzato"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Sconto percentuale"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Data di scadenza del codice promozionale"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Tempo di validità finale"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Data a partire dalla quale il codice promozionale è valido"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Tempo di validità iniziale"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"Timestamp in cui è stato utilizzato il codice promozionale, vuoto se non "
|
||||
"ancora utilizzato"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Timestamp d'uso"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Utente assegnato a questo codice promozionale, se applicabile"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Utente assegnato"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Codice promozionale"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Codici promozionali"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1528,140 +1532,140 @@ msgstr ""
|
|||
"È necessario definire un solo tipo di sconto (importo o percentuale), ma non"
|
||||
" entrambi o nessuno dei due."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Il codice promozionale è già stato utilizzato"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Tipo di sconto non valido per il codice promozionale {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Percentuale di sconto per i prodotti selezionati"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Percentuale di sconto"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Fornite un nome unico per questa promozione"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Nome della promozione"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Descrizione della promozione"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Selezionare i prodotti inclusi in questa promozione"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Prodotti inclusi"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Promozione"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "Il venditore che fornisce questo stock di prodotti"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Venditore associato"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Prezzo finale al cliente dopo i ricarichi"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Prezzo di vendita"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "Il prodotto associato a questa voce di magazzino"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "Il prezzo pagato al venditore per questo prodotto"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Prezzo di acquisto del fornitore"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Quantità disponibile del prodotto in magazzino"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Quantità in magazzino"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "SKU assegnato dal fornitore per identificare il prodotto"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "SKU del venditore"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "File digitale associato a questo stock, se applicabile"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "File digitale"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Voci di magazzino"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Prodotti che l'utente ha contrassegnato come desiderati"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Utente che possiede questa wishlist"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Proprietario della lista dei desideri"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Lista dei desideri"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Scaricare"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Scaricamento"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "Non è possibile scaricare un bene digitale per un ordine non finito."
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Documentario"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Documentari"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Non risolto"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -79,7 +79,7 @@ msgstr "画像"
|
|||
msgid "images"
|
||||
msgstr "画像"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "在庫"
|
||||
|
||||
|
|
@ -87,7 +87,7 @@ msgstr "在庫"
|
|||
msgid "stocks"
|
||||
msgstr "株式"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -95,35 +95,35 @@ msgstr "株式"
|
|||
msgid "price"
|
||||
msgstr "価格"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "製品評価"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "基本情報"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "重要な日程"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "翻訳"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "商品のご注文"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "商品のご注文"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "ビジネス"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "コンフィグ"
|
||||
|
||||
|
|
@ -477,55 +477,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "全商品を一覧表示(シンプル表示)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(正確には)製品UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(アイコン) 製品名"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(リスト)カテゴリー名、大文字と小文字は区別しない"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(正確には)カテゴリーUUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(リスト) タグ名、大文字と小文字は区別されない"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(最低株価"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(最大株価"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(正確には)アクティブ製品のみ"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(商品名"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(最低在庫量"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(正確には)製品スラッグ"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(正確には)デジタルとフィジカル"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -533,33 +533,33 @@ msgstr ""
|
|||
"カンマ区切りの並べ替えフィールドのリスト。降順の場合は `-` をプレフィックスとしてつける。 \n"
|
||||
"**許可:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "単一の製品を取得する(詳細表示)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "製品UUIDまたはスラグ"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "製品を作る"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "編集不可能なフィールドを保持したまま、既存の製品を書き換える。"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr "編集不可能なフィールドを保持したまま、既存の製品の一部のフィールドを更新する。"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "製品を削除する"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "検索語はありません。"
|
||||
|
||||
|
|
@ -614,7 +614,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "order_uuidまたはorder_hr_idを入力してください!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "order.buy()メソッドから間違った型が来た:{type(instance)!s}。"
|
||||
|
||||
|
|
@ -797,7 +797,7 @@ msgstr "プロモコード"
|
|||
msgid "products on sale"
|
||||
msgstr "販売商品"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "プロモーション"
|
||||
|
||||
|
|
@ -813,11 +813,11 @@ msgstr "ベンダー"
|
|||
msgid "product"
|
||||
msgstr "製品"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "ウィッシュリスト掲載商品"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "ウィッシュリスト"
|
||||
|
||||
|
|
@ -963,8 +963,8 @@ msgstr "この値の属性"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "この属性の値に関連する特定の製品"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "関連製品"
|
||||
|
||||
|
|
@ -1060,7 +1060,7 @@ msgstr "オプションでこの製品をブランドと関連付ける"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "この商品の説明やグループ分けに役立つタグ"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "商品タグ"
|
||||
|
||||
|
|
@ -1080,7 +1080,7 @@ msgstr "製品の明確な識別名を提供する"
|
|||
msgid "product name"
|
||||
msgstr "商品名"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "商品の詳細説明を追加する"
|
||||
|
||||
|
|
@ -1177,7 +1177,7 @@ msgstr "ライフサイクルにおける現在の注文状況"
|
|||
msgid "order status"
|
||||
msgstr "注文状況"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr "ユーザーに表示する通知のJSON構造、管理UIではテーブルビューが使用されます。"
|
||||
|
||||
|
|
@ -1213,379 +1213,383 @@ msgstr "人間が読めるID"
|
|||
msgid "order"
|
||||
msgstr "オーダー"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "ユーザーは一度に1つの未決注文しか持つことができません!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "保留中の注文以外の注文に商品を追加することはできません。"
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "アクティブでない商品を注文に追加することはできません。"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "在庫以上の商品を追加することはできません。"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name}が存在しません:{product_uuid}が存在しません。"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr "保留中の注文以外の注文から商品を削除することはできません。"
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "クエリ<{query}>で{name}が存在しません。"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "プロモコードが存在しない"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr "現在ご購入いただけません。数分後にもう一度お試しください。"
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "無効なフォース値"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "空注文はできません!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "注文を完了するための資金不足"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
msgstr "ご登録がない場合はご購入いただけませんので、以下の情報をお知らせください:お客様のお名前、お客様のEメール、お客様の電話番号"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "無効な支払い方法"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr "請求先住所を記入せずに、モーメンタルの注文を作成することはできません。"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "この商品の購入時に顧客が支払った価格"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "注文時の購入価格"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr "この注文商品に関する管理者への内部コメント"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "社内コメント"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "ユーザー通知"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "このアイテムの属性のJSON表現"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "製品属性の順序"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "この商品を含む親注文への参照"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "親注文"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "この注文ラインに関連する特定の製品"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "注文に含まれる特定の商品の数量"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "製品数量"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "この商品の現在のご注文状況"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "製品ラインの状況"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "商品タグの内部タグ識別子"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "タグ名"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "商品タグのユーザーフレンドリーな名前"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "タグ表示名"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "商品タグ"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr "アクセシビリティのために、画像に代替テキストを提供する。"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "画像のaltテキスト"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "この商品の画像ファイルをアップロードする"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "商品画像"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "画像の表示順を決める"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "表示優先度"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "この画像が表す製品"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "商品画像"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "ユーザーが割引を利用する際に使用する固有のコード"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "プロモコード識別子"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "パーセントを使用しない場合に適用される固定割引額"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "固定割引額"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "定額を使用しない場合に適用される割引率"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "割引率"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "プロモコードの有効期限が切れるタイムスタンプ"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "終了有効時間"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "このプロモコードが有効なタイムスタンプ"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "開始有効時間"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr "プロモコードが使用されたタイムスタンプ、未使用の場合は空白"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "使用タイムスタンプ"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "該当する場合、このプロモコードに割り当てられたユーザー"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "担当ユーザー"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "プロモコード"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "プロモコード"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
msgstr "割引の種類は1つだけ(金額またはパーセント)定義されるべきで、両方またはどちらも定義してはならない。"
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "プロモコードはすでに使用されています"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "プロモコード {self.uuid} の割引タイプが無効です。"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "選択した商品の割引率"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "割引率"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "このプロモーションのユニークな名前を入力してください。"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "プロモーション名"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "プロモーション内容"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "キャンペーン対象商品をお選びください。"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "含まれる製品"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "プロモーション"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "この製品の在庫を供給しているベンダー"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "関連ベンダー"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "マークアップ後の顧客への最終価格"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "販売価格"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "このストックエントリーに関連する製品"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "この製品に対してベンダーに支払われた価格"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "ベンダーの購入価格"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "在庫数"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "在庫数"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "製品を識別するためにベンダーが割り当てたSKU"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "ベンダーのSKU"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "この銘柄に関連するデジタルファイル(該当する場合"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "デジタルファイル"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "ストックエントリー"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "ユーザーが欲しいとマークした商品"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "このウィッシュリストを所有しているユーザー"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "ウィッシュリストのオーナー"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "ウィッシュリスト"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "ダウンロード"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "ダウンロード"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "未完成の注文のデジタル資産をダウンロードすることはできません。"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "ドキュメンタリー"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "ドキュメンタリー"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "未解決"
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
|
@ -82,7 +82,7 @@ msgstr ""
|
|||
msgid "images"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -90,7 +90,7 @@ msgstr ""
|
|||
msgid "stocks"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -98,35 +98,35 @@ msgstr ""
|
|||
msgid "price"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr ""
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -471,88 +471,88 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for "
|
||||
"descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr ""
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -607,7 +607,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr ""
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -789,7 +789,7 @@ msgstr ""
|
|||
msgid "products on sale"
|
||||
msgstr ""
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -805,11 +805,11 @@ msgstr ""
|
|||
msgid "product"
|
||||
msgstr ""
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr ""
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -955,7 +955,7 @@ msgstr ""
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928 core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933 core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1051,7 +1051,7 @@ msgstr ""
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1071,7 +1071,7 @@ msgstr ""
|
|||
msgid "product name"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1167,7 +1167,7 @@ msgstr ""
|
|||
msgid "order status"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1203,379 +1203,383 @@ msgstr ""
|
|||
msgid "order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:536
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608 core/models.py:1165
|
||||
#: core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613 core/models.py:1170
|
||||
#: core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr ""
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -81,7 +81,7 @@ msgstr "Afbeelding"
|
|||
msgid "images"
|
||||
msgstr "Afbeeldingen"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Voorraad"
|
||||
|
||||
|
|
@ -89,7 +89,7 @@ msgstr "Voorraad"
|
|||
msgid "stocks"
|
||||
msgstr "Aandelen"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -97,35 +97,35 @@ msgstr "Aandelen"
|
|||
msgid "price"
|
||||
msgstr "Prijs"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Productbeoordeling"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Basisinformatie"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Belangrijke data"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Vertalingen"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Product bestellen"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Producten bestellen"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Is zakelijk"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Config"
|
||||
|
||||
|
|
@ -519,55 +519,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Alle producten weergeven (eenvoudige weergave)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(exacte) UUID van product"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(pictogrammen) Productnaam"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(lijst) Categorienamen, hoofdlettergevoelig"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(exacte) UUID van categorie"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(lijst) Labelnamen, hoofdlettergevoelig"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Minimale aandelenprijs"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Maximale aandelenprijs"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(exact) Alleen actieve producten"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Merknaam"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Minimumvoorraad"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(exacte) productnaam"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(exact) Digitaal vs. fysiek"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -575,36 +575,36 @@ msgstr ""
|
|||
"Door komma's gescheiden lijst van velden om op te sorteren. Voorvoegsel met `-` voor aflopend. \n"
|
||||
"**Toegestaan:** uuid, beoordeling, naam, slug, gemaakt, gewijzigd, prijs, willekeurig"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Een enkel product ophalen (gedetailleerde weergave)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "Product UUID of Slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Een product maken"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Een bestaand product herschrijven met behoud van niet-wijzigbare velden"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Enkele velden van een bestaand product bijwerken, met behoud van niet-"
|
||||
"wijzigbare velden"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Een product verwijderen"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "Geen zoekterm opgegeven."
|
||||
|
||||
|
|
@ -659,7 +659,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "Geef order_uuid of order_hr_id - wederzijds exclusief!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "Verkeerd type kwam uit order.buy() methode: {type(instance)!s}"
|
||||
|
||||
|
|
@ -849,7 +849,7 @@ msgstr "Promocodes"
|
|||
msgid "products on sale"
|
||||
msgstr "Producten te koop"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Promoties"
|
||||
|
||||
|
|
@ -865,11 +865,11 @@ msgstr "Verkoper"
|
|||
msgid "product"
|
||||
msgstr "Product"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Gewenste producten"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Verlanglijst"
|
||||
|
||||
|
|
@ -1017,8 +1017,8 @@ msgstr "Attribuut van deze waarde"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "Het specifieke product geassocieerd met de waarde van dit kenmerk"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Bijbehorend product"
|
||||
|
||||
|
|
@ -1114,7 +1114,7 @@ msgstr "Dit product optioneel koppelen aan een merk"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Tags die dit product helpen beschrijven of groeperen"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Product tags"
|
||||
|
||||
|
|
@ -1134,7 +1134,7 @@ msgstr "Zorg voor een duidelijke identificerende naam voor het product"
|
|||
msgid "product name"
|
||||
msgstr "Naam product"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Voeg een gedetailleerde beschrijving van het product toe"
|
||||
|
||||
|
|
@ -1236,7 +1236,7 @@ msgstr "Huidige status van de order in zijn levenscyclus"
|
|||
msgid "order status"
|
||||
msgstr "Bestelstatus"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"JSON-structuur van meldingen om weer te geven aan gebruikers, in admin UI "
|
||||
|
|
@ -1274,59 +1274,63 @@ msgstr "menselijk leesbare ID"
|
|||
msgid "order"
|
||||
msgstr "Bestel"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "Een gebruiker mag maar één lopende order tegelijk hebben!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr ""
|
||||
"U kunt geen producten toevoegen aan een bestelling die niet in behandeling "
|
||||
"is."
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "U kunt geen inactieve producten toevoegen aan uw bestelling"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "Je kunt niet meer producten toevoegen dan er op voorraad zijn"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} bestaat niet: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr ""
|
||||
"U kunt geen producten verwijderen uit een bestelling die niet in behandeling"
|
||||
" is."
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} bestaat niet met query <{query}>"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Promocode bestaat niet"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"U kunt op dit moment niet kopen. Probeer het over een paar minuten nog eens."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Ongeldige krachtwaarde"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "Je kunt geen lege bestelling kopen!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Onvoldoende fondsen om de bestelling te voltooien"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1334,193 +1338,193 @@ msgstr ""
|
|||
"u niet kunt kopen zonder registratie, geef dan de volgende informatie: "
|
||||
"klantnaam, e-mail klant, telefoonnummer klant"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Ongeldige betaalmethode"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"je kunt geen momentbestelling maken zonder een factuuradres op te geven"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "De prijs die de klant bij aankoop voor dit product heeft betaald"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Aankoopprijs bij bestelling"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr "Interne opmerkingen voor beheerders over dit bestelde product"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Interne opmerkingen"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Meldingen van gebruikers"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "JSON weergave van de attributen van dit item"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Geordende producteigenschappen"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Verwijzing naar de bovenliggende bestelling die dit product bevat"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Ouderlijk bevel"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "Het specifieke product dat bij deze bestelregel hoort"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Hoeveelheid van dit specifieke product in de bestelling"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Hoeveelheid product"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Huidige status van dit product in de bestelling"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Status productlijn"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Interne tagidentifier voor de producttag"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Tag naam"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Gebruiksvriendelijke naam voor de producttag"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Tag weergavenaam"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Productlabel"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr "Geef alternatieve tekst voor de afbeelding voor toegankelijkheid"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Alt-tekst afbeelding"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Upload het afbeeldingsbestand voor dit product"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Product afbeelding"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Bepaalt de volgorde waarin afbeeldingen worden weergegeven"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Prioriteit weergeven"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "Het product dat deze afbeelding vertegenwoordigt"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Product afbeeldingen"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Unieke code die een gebruiker gebruikt om een korting te verzilveren"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Promo code identificatie"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr ""
|
||||
"Vast kortingsbedrag dat wordt toegepast als percentage niet wordt gebruikt"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Vast kortingsbedrag"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr ""
|
||||
"Kortingspercentage dat wordt toegepast als het vaste bedrag niet wordt "
|
||||
"gebruikt"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Kortingspercentage"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Tijdstempel wanneer de promocode verloopt"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Geldigheidsduur einde"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Tijdstempel vanaf wanneer deze promocode geldig is"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Begin geldigheidsduur"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"Tijdstempel wanneer de promocode werd gebruikt, leeg indien nog niet "
|
||||
"gebruikt"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Gebruik tijdstempel"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Gebruiker toegewezen aan deze promocode indien van toepassing"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Toegewezen gebruiker"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Kortingscode"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Actiecodes"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1528,141 +1532,141 @@ msgstr ""
|
|||
"Er moet slechts één type korting worden gedefinieerd (bedrag of percentage),"
|
||||
" maar niet beide of geen van beide."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Promocode is al gebruikt"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Ongeldig kortingstype voor promocode {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Kortingspercentage voor de geselecteerde producten"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Kortingspercentage"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Geef deze promotie een unieke naam"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Naam promotie"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Promotie beschrijving"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Selecteer welke producten onder deze promotie vallen"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Meegeleverde producten"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Promotie"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "De verkoper die dit product levert"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Geassocieerde verkoper"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Eindprijs voor de klant na winstmarges"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Verkoopprijs"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "Het product dat bij deze voorraadvermelding hoort"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "De prijs die voor dit product aan de verkoper is betaald"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Aankoopprijs verkoper"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Beschikbare hoeveelheid van het product in voorraad"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Hoeveelheid op voorraad"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "Door de verkoper toegewezen SKU om het product te identificeren"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "Verkoper SKU"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Digitaal bestand gekoppeld aan deze voorraad indien van toepassing"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Digitaal bestand"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Voorraadboekingen"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Producten die de gebruiker als gewenst heeft gemarkeerd"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Gebruiker die eigenaar is van deze verlanglijst"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Eigenaar verlanglijstje"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Verlanglijst"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Downloaden"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Downloads"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr ""
|
||||
"U kunt geen digitale activa downloaden voor een niet-afgeronde bestelling"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Documentaire"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Documentaires"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Onopgelost"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -83,7 +83,7 @@ msgstr "Obraz"
|
|||
msgid "images"
|
||||
msgstr "Obrazy"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Stan magazynowy"
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ msgstr "Stan magazynowy"
|
|||
msgid "stocks"
|
||||
msgstr "Akcje"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -99,35 +99,35 @@ msgstr "Akcje"
|
|||
msgid "price"
|
||||
msgstr "Cena"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Ocena"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Podstawowe informacje"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Ważne daty"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Tłumaczenia"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Zamów produkt"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Zamawianie produktów"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Czy biznes"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Konfiguracja"
|
||||
|
||||
|
|
@ -514,55 +514,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Lista wszystkich produktów (widok prosty)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(dokładny) UUID produktu"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(ikony) Nazwa produktu"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(lista) Nazwy kategorii, wielkość liter nie ma znaczenia"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(dokładny) UUID kategorii"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(lista) Nazwy tagów, wielkość liter nie ma znaczenia"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Minimalna cena akcji"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Maksymalna cena akcji"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(dokładnie) Tylko aktywne produkty"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Nazwa marki"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Minimalna ilość zapasów"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(dokładny) Ślimak produktu"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(dokładnie) Cyfrowe vs. fizyczne"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -570,35 +570,35 @@ msgstr ""
|
|||
"Rozdzielana przecinkami lista pól do posortowania. Prefiks z `-` dla sortowania malejącego. \n"
|
||||
"**Dozwolone:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Pobieranie pojedynczego produktu (widok szczegółowy)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "UUID produktu lub Slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Tworzenie produktu"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "Przepisz istniejący produkt, zachowując nieedytowalne pola"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Aktualizacja niektórych pól istniejącego produktu z zachowaniem pól "
|
||||
"nieedytowalnych"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Usuń produkt"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "Nie podano wyszukiwanego hasła."
|
||||
|
||||
|
|
@ -653,7 +653,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "Podaj albo order_uuid albo order_hr_id - wzajemnie się wykluczają!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "Nieprawidłowy typ pochodzi z metody order.buy(): {type(instance)!s}"
|
||||
|
||||
|
|
@ -842,7 +842,7 @@ msgstr "Promocodes"
|
|||
msgid "products on sale"
|
||||
msgstr "Produkty w sprzedaży"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Promocje"
|
||||
|
||||
|
|
@ -858,11 +858,11 @@ msgstr "Sprzedawca"
|
|||
msgid "product"
|
||||
msgstr "Produkt"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Produkty z listy życzeń"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Listy życzeń"
|
||||
|
||||
|
|
@ -1008,8 +1008,8 @@ msgstr "Atrybut tej wartości"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "Konkretny produkt powiązany z wartością tego atrybutu"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Produkt powiązany"
|
||||
|
||||
|
|
@ -1105,7 +1105,7 @@ msgstr "Opcjonalnie można powiązać ten produkt z marką"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Tagi, które pomagają opisać lub pogrupować ten produkt"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Tagi produktu"
|
||||
|
||||
|
|
@ -1125,7 +1125,7 @@ msgstr "Wyraźna nazwa identyfikująca produkt"
|
|||
msgid "product name"
|
||||
msgstr "Nazwa produktu"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Dodaj szczegółowy opis produktu"
|
||||
|
||||
|
|
@ -1226,7 +1226,7 @@ msgstr "Aktualny status zamówienia w jego cyklu życia"
|
|||
msgid "order status"
|
||||
msgstr "Status zamówienia"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"Struktura JSON powiadomień do wyświetlenia użytkownikom, w interfejsie "
|
||||
|
|
@ -1264,59 +1264,64 @@ msgstr "Identyfikator czytelny dla człowieka"
|
|||
msgid "order"
|
||||
msgstr "Zamówienie"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr ""
|
||||
"Użytkownik może mieć tylko jedno oczekujące zlecenie w danym momencie!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr ""
|
||||
"Nie można dodać produktów do zamówienia, które nie jest zamówieniem "
|
||||
"oczekującym."
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "Nie można dodać nieaktywnych produktów do zamówienia"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "Nie można dodać więcej produktów niż jest dostępnych w magazynie"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} nie istnieje: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr ""
|
||||
"Nie można usunąć produktów z zamówienia, które nie jest zamówieniem "
|
||||
"oczekującym."
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} nie istnieje z zapytaniem <{query}>."
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Kod promocyjny nie istnieje"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"W tej chwili nie możesz dokonać zakupu, spróbuj ponownie za kilka minut."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Nieprawidłowa wartość siły"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "Nie można kupić pustego zamówienia!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Niewystarczające środki do zrealizowania zamówienia"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1325,193 +1330,193 @@ msgstr ""
|
|||
"informacje: imię i nazwisko klienta, adres e-mail klienta, numer telefonu "
|
||||
"klienta."
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Nieprawidłowa metoda płatności"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"Nie można utworzyć zamówienia chwilowego bez podania adresu rozliczeniowego."
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "Cena zapłacona przez klienta za ten produkt w momencie zakupu."
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Cena zakupu w momencie zamówienia"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr ""
|
||||
"Wewnętrzne komentarze dla administratorów dotyczące tego zamówionego "
|
||||
"produktu"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Uwagi wewnętrzne"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Powiadomienia użytkownika"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "Reprezentacja JSON atrybutów tego elementu"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Zamówione atrybuty produktu"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Odniesienie do zamówienia nadrzędnego zawierającego ten produkt"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Zamówienie nadrzędne"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "Konkretny produkt powiązany z tą linią zamówienia"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Ilość tego konkretnego produktu w zamówieniu"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Ilość produktu"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Aktualny status tego produktu w zamówieniu"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Status linii produktów"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Wewnętrzny identyfikator tagu produktu"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Nazwa tagu"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Przyjazna dla użytkownika nazwa etykiety produktu"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Wyświetlana nazwa znacznika"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Etykieta produktu"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr ""
|
||||
"Zapewnienie alternatywnego tekstu dla obrazu w celu ułatwienia dostępu"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Tekst alternatywny obrazu"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Prześlij plik obrazu dla tego produktu"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Obraz produktu"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Określa kolejność wyświetlania obrazów"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Priorytet wyświetlania"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "Produkt, który przedstawia ten obraz"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Zdjęcia produktów"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Unikalny kod używany przez użytkownika do realizacji rabatu."
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Identyfikator kodu promocyjnego"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "Stała kwota rabatu stosowana, jeśli procent nie jest używany"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Stała kwota rabatu"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "Rabat procentowy stosowany w przypadku niewykorzystania stałej kwoty"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Rabat procentowy"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Znacznik czasu wygaśnięcia kodu promocyjnego"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Końcowy czas ważności"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Znacznik czasu, od którego ten kod promocyjny jest ważny"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Czas rozpoczęcia ważności"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"Znacznik czasu użycia kodu promocyjnego, pusty, jeśli nie został jeszcze "
|
||||
"użyty."
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Znacznik czasu użycia"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Użytkownik przypisany do tego kodu promocyjnego, jeśli dotyczy"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Przypisany użytkownik"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Kod promocyjny"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Kody promocyjne"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1519,140 +1524,140 @@ msgstr ""
|
|||
"Należy zdefiniować tylko jeden rodzaj rabatu (kwotowy lub procentowy), ale "
|
||||
"nie oba lub żaden z nich."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Kod promocyjny został już wykorzystany"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Nieprawidłowy typ rabatu dla kodu promocyjnego {self.uuid}."
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Rabat procentowy na wybrane produkty"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Procent rabatu"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Podaj unikalną nazwę tej promocji"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Nazwa promocji"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Opis promocji"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Wybierz produkty objęte promocją"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Dołączone produkty"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Promocja"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "Sprzedawca dostarczający ten produkt"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Powiązany sprzedawca"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Ostateczna cena dla klienta po uwzględnieniu marży"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Cena sprzedaży"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "Produkt powiązany z tym wpisem magazynowym"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "Cena zapłacona sprzedawcy za ten produkt"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Cena zakupu przez sprzedawcę"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Dostępna ilość produktu w magazynie"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Ilość w magazynie"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "Jednostki SKU przypisane przez dostawcę w celu identyfikacji produktu"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "SKU sprzedawcy"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Plik cyfrowy powiązany z tymi zapasami, jeśli dotyczy"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Plik cyfrowy"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Zapisy magazynowe"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Produkty, które użytkownik oznaczył jako poszukiwane"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Użytkownik posiadający tę listę życzeń"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Właściciel listy życzeń"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Lista życzeń"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Pobierz"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Pliki do pobrania"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "Nie można pobrać zasobu cyfrowego dla nieukończonego zamówienia."
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Film dokumentalny"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Filmy dokumentalne"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Nierozwiązany"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -83,7 +83,7 @@ msgstr "Imagem"
|
|||
msgid "images"
|
||||
msgstr "Imagens"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Estoque"
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ msgstr "Estoque"
|
|||
msgid "stocks"
|
||||
msgstr "Ações"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -99,35 +99,35 @@ msgstr "Ações"
|
|||
msgid "price"
|
||||
msgstr "Preço"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Avaliação do produto"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Informações básicas"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Datas importantes"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Traduções"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Pedido de produto"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Solicitar produtos"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "É um negócio"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Configuração"
|
||||
|
||||
|
|
@ -506,56 +506,56 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Listar todos os produtos (visualização simples)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "UUID (exato) do produto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(icontains) Nome do produto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr ""
|
||||
"(lista) Nomes de categorias, sem distinção entre maiúsculas e minúsculas"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(exato) UUID da categoria"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(lista) Nomes de tags, sem distinção entre maiúsculas e minúsculas"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Preço mínimo das ações"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Preço máximo da ação"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(exato) Somente produtos ativos"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Nome da marca"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Quantidade mínima em estoque"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(exato) Slug do produto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(exato) Digital vs. físico"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -563,35 +563,35 @@ msgstr ""
|
|||
"Lista de campos separada por vírgulas para classificação. Prefixe com `-` para classificação decrescente. \n"
|
||||
"**Permitido:** uuid, classificação, nome, slug, criado, modificado, preço, aleatório"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Recuperar um único produto (visualização detalhada)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "UUID ou Slug do produto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Criar um produto"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "Reescrever um produto existente, preservando os campos não editáveis"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Atualizar alguns campos de um produto existente, preservando os campos não "
|
||||
"editáveis"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Excluir um produto"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "Nenhum termo de pesquisa foi fornecido."
|
||||
|
||||
|
|
@ -646,7 +646,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "Forneça order_uuid ou order_hr_id - mutuamente exclusivos!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "O tipo errado veio do método order.buy(): {type(instance)!s}"
|
||||
|
||||
|
|
@ -834,7 +834,7 @@ msgstr "Códigos promocionais"
|
|||
msgid "products on sale"
|
||||
msgstr "Produtos à venda"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Promoções"
|
||||
|
||||
|
|
@ -850,11 +850,11 @@ msgstr "Vendor"
|
|||
msgid "product"
|
||||
msgstr "Produto"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Produtos da lista de desejos"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Listas de desejos"
|
||||
|
||||
|
|
@ -1001,8 +1001,8 @@ msgstr "Atributo desse valor"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "O produto específico associado ao valor desse atributo"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Produto associado"
|
||||
|
||||
|
|
@ -1098,7 +1098,7 @@ msgstr "Opcionalmente, associe esse produto a uma marca"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Tags que ajudam a descrever ou agrupar este produto"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Etiquetas do produto"
|
||||
|
||||
|
|
@ -1118,7 +1118,7 @@ msgstr "Fornecer um nome de identificação claro para o produto"
|
|||
msgid "product name"
|
||||
msgstr "Nome do produto"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Adicione uma descrição detalhada do produto"
|
||||
|
||||
|
|
@ -1220,7 +1220,7 @@ msgstr "Status atual do pedido em seu ciclo de vida"
|
|||
msgid "order status"
|
||||
msgstr "Status do pedido"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"Estrutura JSON de notificações a serem exibidas aos usuários; na interface "
|
||||
|
|
@ -1258,56 +1258,60 @@ msgstr "ID legível por humanos"
|
|||
msgid "order"
|
||||
msgstr "Pedido"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "Um usuário deve ter apenas uma ordem pendente por vez!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "Não é possível adicionar produtos a um pedido que não esteja pendente"
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "Não é possível adicionar produtos inativos ao pedido"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr ""
|
||||
"Não é possível adicionar mais produtos do que os disponíveis em estoque"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} não existe: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr "Não é possível remover produtos de um pedido que não esteja pendente"
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} não existe com a consulta <{query}>"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "O código promocional não existe"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"Não é possível comprar neste momento, tente novamente em alguns minutos."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Valor de força inválido"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "Você não pode comprar um pedido vazio!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Fundos insuficientes para concluir o pedido"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1315,194 +1319,194 @@ msgstr ""
|
|||
"Não é possível comprar sem registro, forneça as seguintes informações: nome "
|
||||
"do cliente, e-mail do cliente, número de telefone do cliente"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Método de pagamento inválido"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"não é possível criar um pedido de compra sem fornecer um endereço de "
|
||||
"cobrança"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "O preço pago pelo cliente por esse produto no momento da compra"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Preço de compra no momento do pedido"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr ""
|
||||
"Comentários internos para administradores sobre este produto encomendado"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Comentários internos"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Notificações do usuário"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "Representação JSON dos atributos desse item"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Atributos ordenados do produto"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Referência ao pedido pai que contém esse produto"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Ordem dos pais"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "O produto específico associado a essa linha de pedido"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Quantidade desse produto específico no pedido"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Quantidade do produto"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Status atual desse produto no pedido"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Status da linha de produtos"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Identificador de tag interno para a tag do produto"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Nome da etiqueta"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Nome de fácil utilização para a etiqueta do produto"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Nome de exibição da tag"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Etiqueta do produto"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr ""
|
||||
"Forneça um texto alternativo para a imagem para fins de acessibilidade"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Texto alternativo da imagem"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Faça o upload do arquivo de imagem para este produto"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Imagem do produto"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Determina a ordem em que as imagens são exibidas"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Prioridade de exibição"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "O produto que esta imagem representa"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Imagens do produto"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Código exclusivo usado por um usuário para resgatar um desconto"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Identificador de código promocional"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "Valor de desconto fixo aplicado se a porcentagem não for usada"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Valor do desconto fixo"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "Desconto percentual aplicado se o valor fixo não for usado"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Desconto percentual"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Registro de data e hora em que o código promocional expira"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Tempo de validade final"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr ""
|
||||
"Registro de data e hora a partir do qual esse código promocional é válido"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Hora de início da validade"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"Registro de data e hora em que o código promocional foi usado, em branco se "
|
||||
"ainda não tiver sido usado"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Registro de data e hora de uso"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Usuário atribuído a esse código promocional, se aplicável"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Usuário atribuído"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Código promocional"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Códigos promocionais"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1510,142 +1514,142 @@ msgstr ""
|
|||
"Apenas um tipo de desconto deve ser definido (valor ou porcentagem), mas não"
|
||||
" ambos ou nenhum."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "O código promocional já foi usado"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Tipo de desconto inválido para o código promocional {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Desconto percentual para os produtos selecionados"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Porcentagem de desconto"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Forneça um nome exclusivo para essa promoção"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Nome da promoção"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Descrição da promoção"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Selecione quais produtos estão incluídos nessa promoção"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Produtos incluídos"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Promoção"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "O fornecedor que fornece esse estoque de produtos"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Fornecedor associado"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Preço final para o cliente após as marcações"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Preço de venda"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "O produto associado a essa entrada em estoque"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "O preço pago ao fornecedor por esse produto"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Preço de compra do fornecedor"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Quantidade disponível do produto em estoque"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Quantidade em estoque"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "SKU atribuído pelo fornecedor para identificar o produto"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "SKU do fornecedor"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Arquivo digital associado a esse estoque, se aplicável"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Arquivo digital"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Entradas de estoque"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Produtos que o usuário marcou como desejados"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Usuário que possui esta lista de desejos"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Proprietário da lista de desejos"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Lista de desejos"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Baixar"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Downloads"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr ""
|
||||
"Não é possível fazer download de um ativo digital para um pedido não "
|
||||
"concluído"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Documentário"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Documentários"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Não resolvido"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -83,7 +83,7 @@ msgstr "Imagine"
|
|||
msgid "images"
|
||||
msgstr "Imagini"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Stoc"
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ msgstr "Stoc"
|
|||
msgid "stocks"
|
||||
msgstr "Stocuri"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -99,35 +99,35 @@ msgstr "Stocuri"
|
|||
msgid "price"
|
||||
msgstr "Preț"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Evaluarea produsului"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Informații de bază"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Date importante"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Traduceri"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Comanda Produs"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Comandați produse"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Este o afacere"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Configurare"
|
||||
|
||||
|
|
@ -515,55 +515,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Listează toate produsele (vizualizare simplă)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(exact) UUID al produsului"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(icontains) Denumirea produsului"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(listă) Numele categoriilor, fără deosebire de majuscule"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(exact) UUID al categoriei"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(listă) Nume de etichete, fără diferențiere de majuscule"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Prețul minim al acțiunilor"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Prețul maxim al acțiunilor"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(exact) Numai produse active"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Denumire comercială"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Cantitatea minimă de stoc"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(exact) Limbajul produsului"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(exact) Digital vs. fizic"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -571,36 +571,36 @@ msgstr ""
|
|||
"Lista de câmpuri separate prin virgulă după care se face sortarea. Prefixați cu `-` pentru descrescător. \n"
|
||||
"**Autorizate:** uuid, rating, nume, slug, creat, modificat, preț, aleatoriu"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Recuperarea unui singur produs (vedere detaliată)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "UUID sau Slug al produsului"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Creați un produs"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Rescrierea unui produs existent, păstrând câmpurile care nu pot fi editate"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Actualizarea unor câmpuri ale unui produs existent, păstrând câmpurile "
|
||||
"needitabile"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Ștergeți un produs"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "Nu a fost furnizat niciun termen de căutare."
|
||||
|
||||
|
|
@ -656,7 +656,7 @@ msgstr ""
|
|||
"Vă rugăm să furnizați fie order_uuid sau order_hr_id - se exclud reciproc!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "Metoda order.buy() a generat un tip greșit: {type(instance)!s}"
|
||||
|
||||
|
|
@ -847,7 +847,7 @@ msgstr "Coduri promoționale"
|
|||
msgid "products on sale"
|
||||
msgstr "Produse scoase la vânzare"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Promoții"
|
||||
|
||||
|
|
@ -863,11 +863,11 @@ msgstr "Furnizor"
|
|||
msgid "product"
|
||||
msgstr "Produs"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Produse dorite"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Liste de dorințe"
|
||||
|
||||
|
|
@ -1015,8 +1015,8 @@ msgstr "Atributul acestei valori"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "Produsul specific asociat cu valoarea acestui atribut"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Produs asociat"
|
||||
|
||||
|
|
@ -1113,7 +1113,7 @@ msgstr "Opțional, asociați acest produs cu un brand"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Etichete care ajută la descrierea sau gruparea acestui produs"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Etichete de produs"
|
||||
|
||||
|
|
@ -1133,7 +1133,7 @@ msgstr "Furnizați o denumire clară de identificare a produsului"
|
|||
msgid "product name"
|
||||
msgstr "Denumirea produsului"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Adăugați o descriere detaliată a produsului"
|
||||
|
||||
|
|
@ -1236,7 +1236,7 @@ msgstr "Stadiul actual al comenzii în ciclul său de viață"
|
|||
msgid "order status"
|
||||
msgstr "Stadiul comenzii"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"Structura JSON a notificărilor care urmează să fie afișate utilizatorilor, "
|
||||
|
|
@ -1274,57 +1274,62 @@ msgstr "ID lizibil de către om"
|
|||
msgid "order"
|
||||
msgstr "Comandă"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr ""
|
||||
"Un utilizator trebuie să aibă un singur ordin în așteptare la un moment dat!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "Nu puteți adăuga produse la o comandă care nu este în așteptare"
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "Nu puteți adăuga produse inactive la comandă"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "Nu puteți adăuga mai multe produse decât cele disponibile în stoc"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} nu există: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr ""
|
||||
"Nu puteți elimina produse dintr-o comandă care nu este o comandă în curs"
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} nu există cu interogarea <{query}>"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Codul promoțional nu există"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"Nu puteți achiziționa în acest moment, vă rugăm să încercați din nou în "
|
||||
"câteva minute."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Valoare forță invalidă"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "Nu puteți achiziționa o comandă goală!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Insuficiența fondurilor pentru finalizarea comenzii"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1332,191 +1337,191 @@ msgstr ""
|
|||
"nu puteți cumpăra fără înregistrare, vă rugăm să furnizați următoarele "
|
||||
"informații: nume client, e-mail client, număr de telefon client"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Metodă de plată invalidă"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"nu puteți crea o comandă momental fără a furniza o adresă de facturare"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "Prețul plătit de client pentru acest produs la momentul achiziției"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Prețul de achiziție la momentul comenzii"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr ""
|
||||
"Comentarii interne pentru administratori cu privire la acest produs comandat"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Observații interne"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Notificări pentru utilizatori"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "Reprezentarea JSON a atributelor acestui element"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Atribute de produs ordonate"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Trimitere la comanda mamă care conține acest produs"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Ordinul părinților"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "Produsul specific asociat cu această linie de comandă"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Cantitatea acestui produs specific din comandă"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Cantitatea produsului"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Starea actuală a acestui produs în comandă"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Starea liniei de produse"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Identificator intern de etichetă pentru eticheta produsului"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Nume etichetă"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Nume ușor de utilizat pentru eticheta produsului"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Nume afișare etichetă"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Etichetă produs"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr "Furnizați text alternativ pentru imagine pentru accesibilitate"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Textul alt al imaginii"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Încărcați fișierul de imagine pentru acest produs"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Imaginea produsului"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Determină ordinea în care sunt afișate imaginile"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Prioritatea afișării"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "Produsul pe care îl reprezintă această imagine"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Imagini ale produsului"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Cod unic utilizat de un utilizator pentru a răscumpăra o reducere"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Cod promoțional de identificare"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "Valoarea fixă a reducerii aplicate dacă procentul nu este utilizat"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Valoarea fixă a reducerii"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "Procentul de reducere aplicat dacă suma fixă nu este utilizată"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Reducere procentuală"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Data la care expiră codul promoțional"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Timpul final de valabilitate"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Timestamp de la care acest cod promoțional este valabil"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Ora de începere a valabilității"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"Momentul în care codul promoțional a fost utilizat, gol dacă nu a fost "
|
||||
"utilizat încă"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Timestamp de utilizare"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Utilizatorul atribuit acestui cod promoțional, dacă este cazul"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Utilizator atribuit"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Cod promoțional"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Coduri promoționale"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1524,140 +1529,140 @@ msgstr ""
|
|||
"Trebuie definit un singur tip de reducere (sumă sau procent), dar nu ambele "
|
||||
"sau niciuna."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Codul promoțional a fost deja utilizat"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Tip de reducere invalid pentru codul promoțional {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Procentul de reducere pentru produsele selectate"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Procent de reducere"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Furnizați un nume unic pentru această promoție"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Numele promoției"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Descrierea promoției"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Selectați ce produse sunt incluse în această promoție"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Produse incluse"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Promovare"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "Furnizorul care furnizează acest stoc de produse"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Furnizor asociat"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Prețul final pentru client după majorări"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Prețul de vânzare"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "Produsul asociat cu această intrare în stoc"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "Prețul plătit vânzătorului pentru acest produs"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Prețul de achiziție al furnizorului"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Cantitatea disponibilă a produsului în stoc"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Cantitate în stoc"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "SKU atribuit de furnizor pentru identificarea produsului"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "SKU al furnizorului"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Fișier digital asociat cu acest stoc, dacă este cazul"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Fișier digital"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Intrări pe stoc"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Produse pe care utilizatorul le-a marcat ca fiind dorite"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Utilizatorul care deține această listă de dorințe"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Proprietarul listei de dorințe"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Lista dorințelor"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Descărcare"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Descărcări"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "Nu puteți descărca un bun digital pentru o comandă nefinalizată"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Documentar"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Documentare"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Nerezolvat"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -83,7 +83,7 @@ msgstr "Изображение"
|
|||
msgid "images"
|
||||
msgstr "Изображения"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "Наличие"
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ msgstr "Наличие"
|
|||
msgid "stocks"
|
||||
msgstr "Наличия"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -99,35 +99,35 @@ msgstr "Наличия"
|
|||
msgid "price"
|
||||
msgstr "Цена"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "Рейтинг продукции"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "Основная информация"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "Важные даты"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "Переводы"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "Заказать товар"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "Заказать товары"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Бизнес"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "Конфигурация"
|
||||
|
||||
|
|
@ -517,55 +517,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "Список всех продуктов (простой вид)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(точный) UUID продукта"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(иконки) Название продукта"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(список) Названия категорий, без учета регистра"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(точный) UUID категории"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(список) Имена тегов, нечувствительные к регистру"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) Минимальная цена акции"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) Максимальная цена акции"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(точно) Только активные продукты"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) Торговое название"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) Минимальное количество на складе"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(точный) Артикул"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(точно) Цифровые и физические"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -573,35 +573,35 @@ msgstr ""
|
|||
"Список полей для сортировки, разделенных запятыми. Для сортировки по убыванию используйте префикс `-`. \n"
|
||||
"**Разрешенные:** uuid, рейтинг, название, slug, created, modified, price, random"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "Получение одного продукта (подробный просмотр)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "UUID или Slug продукта"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "Создать продукт"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "Переписать существующий продукт, сохранив нередактируемые поля"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr ""
|
||||
"Обновление некоторых полей существующего продукта с сохранением "
|
||||
"нередактируемых полей"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "Удалить продукт"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "Поисковый запрос не предоставлен."
|
||||
|
||||
|
|
@ -658,7 +658,7 @@ msgstr ""
|
|||
"варианты!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "Неправильный тип получен из метода order.buy(): {type(instance)!s}"
|
||||
|
||||
|
|
@ -849,7 +849,7 @@ msgstr "Промокоды"
|
|||
msgid "products on sale"
|
||||
msgstr "Продукты в продаже"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "Акции"
|
||||
|
||||
|
|
@ -865,11 +865,11 @@ msgstr "Поставщик"
|
|||
msgid "product"
|
||||
msgstr "Продукт"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "Продукты из списка желаний"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "Списки желаний"
|
||||
|
||||
|
|
@ -1017,8 +1017,8 @@ msgstr "Атрибут этого значения"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "Конкретный продукт, связанный со значением этого атрибута"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "Сопутствующий товар"
|
||||
|
||||
|
|
@ -1114,7 +1114,7 @@ msgstr "По желанию ассоциируйте этот продукт с
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "Теги, которые помогают описать или сгруппировать этот продукт"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "Теги товара"
|
||||
|
||||
|
|
@ -1134,7 +1134,7 @@ msgstr "Обеспечьте четкое идентификационное н
|
|||
msgid "product name"
|
||||
msgstr "Название продукта"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "Добавьте подробное описание продукта"
|
||||
|
||||
|
|
@ -1234,7 +1234,7 @@ msgstr "Текущий статус заказа в его жизненном ц
|
|||
msgid "order status"
|
||||
msgstr "Статус заказа"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr ""
|
||||
"JSON-структура уведомлений для отображения пользователям, в административном"
|
||||
|
|
@ -1272,57 +1272,61 @@ msgstr "человекочитаемый идентификатор"
|
|||
msgid "order"
|
||||
msgstr "Заказать"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "Пользователь может одновременно иметь только один отложенный ордер!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "Вы не можете добавить товары в заказ, который не является отложенным."
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "Вы не можете добавить неактивные товары в заказ"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "Вы не можете добавить больше товаров, чем есть на складе"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} не существует: {product_uuid}"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr ""
|
||||
"Вы не можете удалить товары из заказа, который не является отложенным."
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "{name} не существует в запросе <{query}>."
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "Промокод не существует"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr ""
|
||||
"В данный момент вы не можете совершить покупку, пожалуйста, повторите "
|
||||
"попытку через несколько минут."
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "Недопустимое значение силы"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "Вы не можете приобрести пустой заказ!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "Недостаточно средств для выполнения заказа"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
|
|
@ -1330,194 +1334,194 @@ msgstr ""
|
|||
"Вы не можете купить без регистрации, пожалуйста, предоставьте следующую "
|
||||
"информацию: имя клиента, электронная почта клиента, номер телефона клиента"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "Неверный метод оплаты"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr ""
|
||||
"Вы не можете создать заказ momental, не указав адрес для выставления счета"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "Цена, уплаченная клиентом за данный продукт на момент покупки"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "Покупная цена на момент заказа"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr ""
|
||||
"Внутренние комментарии для администраторов об этом заказанном продукте"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "Внутренние комментарии"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "Уведомления пользователей"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "JSON-представление атрибутов этого элемента"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "Атрибуты заказанного продукта"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "Ссылка на родительский заказ, содержащий данный продукт"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "Родительский приказ"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "Конкретный продукт, связанный с этой линией заказа"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "Количество данного товара в заказе"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "Количество продукта"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "Текущий статус этого продукта в заказе"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "Состояние продуктовой линейки"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "Внутренний идентификатор тега для тега продукта"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "Название тега"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "Удобное название для метки продукта"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "Отображаемое имя тега"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "Метка продукта"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr ""
|
||||
"Предоставьте альтернативный текст для изображения, чтобы обеспечить "
|
||||
"доступность"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "Альтовый текст изображения"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "Загрузите файл изображения для этого продукта"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "Изображение продукта"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "Определяет порядок отображения изображений"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "Приоритет отображения"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "Продукт, который представлен на этом изображении"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "Изображения продуктов"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "Уникальный код, используемый пользователем для получения скидки"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "Идентификатор промо-кода"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "Фиксированная сумма скидки, применяемая, если процент не используется"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "Фиксированная сумма скидки"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr ""
|
||||
"Процентная скидка, применяемая, если фиксированная сумма не используется"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "Процентная скидка"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "Временная метка, когда истекает срок действия промокода"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "Время окончания срока действия"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "Время, с которого действует этот промокод"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "Время начала действия"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr ""
|
||||
"Временная метка, когда был использован промокод, пустая, если он еще не "
|
||||
"использовался"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "Временная метка использования"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "Пользователь, назначенный на этот промокод, если применимо"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "Назначенный пользователь"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "Промокод"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "Промокоды"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
|
|
@ -1525,140 +1529,140 @@ msgstr ""
|
|||
"Следует определить только один тип скидки (сумма или процент), но не оба или"
|
||||
" ни один из них."
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "Промокоды"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "Неверный тип скидки для промокода {self.uuid}"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "Процентная скидка на выбранные продукты"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "Процент скидки"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "Укажите уникальное имя для этой акции"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "Название акции"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "Описание акции"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "Выберите, какие продукты участвуют в этой акции"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "Включенные продукты"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "Продвижение"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "Поставщик, поставляющий данный товар на склад"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "Ассоциированный поставщик"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "Окончательная цена для покупателя после наценок"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "Цена продажи"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "Продукт, связанный с этой складской записью"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "Цена, уплаченная продавцу за этот продукт"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "Цена покупки у поставщика"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "Доступное количество продукта на складе"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "Количество на складе"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "Присвоенный поставщиком SKU для идентификации продукта"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "SKU поставщика"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "Цифровой файл, связанный с этой акцией, если применимо"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "Цифровой файл"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "Проводки по запасам"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "Продукты, которые пользователь отметил как желаемые"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "Пользователь, владеющий этим списком желаний"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "Владелец вишлиста"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "Список желаний"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "Скачать"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "Скачать"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "Вы не можете загрузить цифровой актив для незавершенного заказа"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "Документальный фильм"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "Документальные фильмы"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "Неразрешенные"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 15:33+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -79,7 +79,7 @@ msgstr "图片"
|
|||
msgid "images"
|
||||
msgstr "图片"
|
||||
|
||||
#: core/admin.py:160 core/models.py:1127
|
||||
#: core/admin.py:160 core/models.py:1132
|
||||
msgid "stock"
|
||||
msgstr "库存"
|
||||
|
||||
|
|
@ -87,7 +87,7 @@ msgstr "库存"
|
|||
msgid "stocks"
|
||||
msgstr "股票"
|
||||
|
||||
#: core/admin.py:191 core/graphene/object_types.py:320
|
||||
#: core/admin.py:192 core/graphene/object_types.py:320
|
||||
#: core/templates/digital_order_created_email.html:109
|
||||
#: core/templates/digital_order_delivered_email.html:109
|
||||
#: core/templates/shipped_order_created_email.html:95
|
||||
|
|
@ -95,35 +95,35 @@ msgstr "股票"
|
|||
msgid "price"
|
||||
msgstr "价格"
|
||||
|
||||
#: core/admin.py:196
|
||||
#: core/admin.py:197
|
||||
msgid "rating"
|
||||
msgstr "产品评级"
|
||||
|
||||
#: core/admin.py:200
|
||||
#: core/admin.py:201
|
||||
msgid "basic info"
|
||||
msgstr "基本信息"
|
||||
|
||||
#: core/admin.py:214
|
||||
#: core/admin.py:215
|
||||
msgid "important dates"
|
||||
msgstr "重要日期"
|
||||
|
||||
#: core/admin.py:215
|
||||
#: core/admin.py:216
|
||||
msgid "translations"
|
||||
msgstr "翻译"
|
||||
|
||||
#: core/admin.py:253 core/models.py:837
|
||||
#: core/admin.py:254 core/models.py:842
|
||||
msgid "order product"
|
||||
msgstr "订购产品"
|
||||
|
||||
#: core/admin.py:254 core/graphene/object_types.py:242 core/models.py:838
|
||||
#: core/admin.py:255 core/graphene/object_types.py:242 core/models.py:843
|
||||
msgid "order products"
|
||||
msgstr "订购产品"
|
||||
|
||||
#: core/admin.py:273
|
||||
#: core/admin.py:274
|
||||
msgid "is business"
|
||||
msgstr "Is Business"
|
||||
|
||||
#: core/admin.py:381
|
||||
#: core/admin.py:382
|
||||
msgid "config"
|
||||
msgstr "配置"
|
||||
|
||||
|
|
@ -475,55 +475,55 @@ msgstr ""
|
|||
msgid "list all products (simple view)"
|
||||
msgstr "列出所有产品(简单视图)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:278
|
||||
#: core/docs/drf/viewsets.py:281
|
||||
msgid "(exact) Product UUID"
|
||||
msgstr "(产品 UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:279
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
msgid "(icontains) Product name"
|
||||
msgstr "(图示) 产品名称"
|
||||
|
||||
#: core/docs/drf/viewsets.py:280
|
||||
#: core/docs/drf/viewsets.py:293
|
||||
msgid "(list) Category names, case-insensitive"
|
||||
msgstr "(列表) 类别名称,不区分大小写"
|
||||
|
||||
#: core/docs/drf/viewsets.py:282
|
||||
#: core/docs/drf/viewsets.py:299
|
||||
msgid "(exact) Category UUID"
|
||||
msgstr "(类别 UUID"
|
||||
|
||||
#: core/docs/drf/viewsets.py:283
|
||||
#: core/docs/drf/viewsets.py:305
|
||||
msgid "(list) Tag names, case-insensitive"
|
||||
msgstr "(标签名称,不区分大小写"
|
||||
|
||||
#: core/docs/drf/viewsets.py:284
|
||||
#: core/docs/drf/viewsets.py:311
|
||||
msgid "(gte) Minimum stock price"
|
||||
msgstr "(gte) 最低股价"
|
||||
|
||||
#: core/docs/drf/viewsets.py:285
|
||||
#: core/docs/drf/viewsets.py:317
|
||||
msgid "(lte) Maximum stock price"
|
||||
msgstr "(lte) 最高股价"
|
||||
|
||||
#: core/docs/drf/viewsets.py:286
|
||||
#: core/docs/drf/viewsets.py:323
|
||||
msgid "(exact) Only active products"
|
||||
msgstr "(准确)只有活性产品"
|
||||
|
||||
#: core/docs/drf/viewsets.py:287
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
msgid "(iexact) Brand name"
|
||||
msgstr "(iexact) 品牌名称"
|
||||
|
||||
#: core/docs/drf/viewsets.py:289
|
||||
#: core/docs/drf/viewsets.py:341
|
||||
msgid "(gt) Minimum stock quantity"
|
||||
msgstr "(gt) 最低库存量"
|
||||
|
||||
#: core/docs/drf/viewsets.py:290
|
||||
#: core/docs/drf/viewsets.py:347
|
||||
msgid "(exact) Product slug"
|
||||
msgstr "(准确) 产品标题"
|
||||
|
||||
#: core/docs/drf/viewsets.py:291
|
||||
#: core/docs/drf/viewsets.py:353
|
||||
msgid "(exact) Digital vs. physical"
|
||||
msgstr "(准确)数字与实物"
|
||||
|
||||
#: core/docs/drf/viewsets.py:295
|
||||
#: core/docs/drf/viewsets.py:360
|
||||
msgid ""
|
||||
"Comma-separated list of fields to sort by. Prefix with `-` for descending. \n"
|
||||
"**Allowed:** uuid, rating, name, slug, created, modified, price, random"
|
||||
|
|
@ -531,33 +531,33 @@ msgstr ""
|
|||
"用逗号分隔的要排序的字段列表。前缀为 `-` 表示降序。 \n"
|
||||
"**允许:** uuid、评分、名称、标签、创建、修改、价格、随机"
|
||||
|
||||
#: core/docs/drf/viewsets.py:310
|
||||
#: core/docs/drf/viewsets.py:374
|
||||
msgid "retrieve a single product (detailed view)"
|
||||
msgstr "检索单个产品(详细视图)"
|
||||
|
||||
#: core/docs/drf/viewsets.py:311 core/docs/drf/viewsets.py:320
|
||||
#: core/docs/drf/viewsets.py:325 core/docs/drf/viewsets.py:330
|
||||
#: core/docs/drf/viewsets.py:379 core/docs/drf/viewsets.py:401
|
||||
#: core/docs/drf/viewsets.py:416 core/docs/drf/viewsets.py:431
|
||||
msgid "Product UUID or slug"
|
||||
msgstr "产品 UUID 或 Slug"
|
||||
|
||||
#: core/docs/drf/viewsets.py:315
|
||||
#: core/docs/drf/viewsets.py:389
|
||||
msgid "create a product"
|
||||
msgstr "创建产品"
|
||||
|
||||
#: core/docs/drf/viewsets.py:319
|
||||
#: core/docs/drf/viewsets.py:396
|
||||
msgid "rewrite an existing product, preserving non-editable fields"
|
||||
msgstr "重写现有产品,保留不可编辑字段"
|
||||
|
||||
#: core/docs/drf/viewsets.py:324
|
||||
#: core/docs/drf/viewsets.py:411
|
||||
msgid ""
|
||||
"update some fields of an existing product, preserving non-editable fields"
|
||||
msgstr "更新现有产品的某些字段,保留不可编辑的字段"
|
||||
|
||||
#: core/docs/drf/viewsets.py:329
|
||||
#: core/docs/drf/viewsets.py:426
|
||||
msgid "delete a product"
|
||||
msgstr "删除产品"
|
||||
|
||||
#: core/elasticsearch/__init__.py:39
|
||||
#: core/elasticsearch/__init__.py:40
|
||||
msgid "no search term provided."
|
||||
msgstr "未提供搜索条件。"
|
||||
|
||||
|
|
@ -612,7 +612,7 @@ msgid "please provide either order_uuid or order_hr_id - mutually exclusive"
|
|||
msgstr "请提供 order_uuid 或 order_hr_id(互斥)!"
|
||||
|
||||
#: core/graphene/mutations.py:201 core/graphene/mutations.py:355
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:248
|
||||
#: core/graphene/mutations.py:389 core/viewsets.py:253
|
||||
msgid "wrong type came from order.buy() method: {type(instance)!s}"
|
||||
msgstr "order.buy() 方法中的类型有误:{type(instance)!s}"
|
||||
|
||||
|
|
@ -795,7 +795,7 @@ msgstr "促销代码"
|
|||
msgid "products on sale"
|
||||
msgstr "销售产品"
|
||||
|
||||
#: core/graphene/object_types.py:405 core/models.py:1068
|
||||
#: core/graphene/object_types.py:405 core/models.py:1073
|
||||
msgid "promotions"
|
||||
msgstr "促销活动"
|
||||
|
||||
|
|
@ -811,11 +811,11 @@ msgstr "供应商"
|
|||
msgid "product"
|
||||
msgstr "产品"
|
||||
|
||||
#: core/graphene/object_types.py:421 core/models.py:1138
|
||||
#: core/graphene/object_types.py:421 core/models.py:1143
|
||||
msgid "wishlisted products"
|
||||
msgstr "心愿单上的产品"
|
||||
|
||||
#: core/graphene/object_types.py:427 core/models.py:1155
|
||||
#: core/graphene/object_types.py:427 core/models.py:1160
|
||||
msgid "wishlists"
|
||||
msgstr "愿望清单"
|
||||
|
||||
|
|
@ -961,8 +961,8 @@ msgstr "该值的属性"
|
|||
msgid "the specific product associated with this attribute's value"
|
||||
msgstr "与该属性值相关的特定产品"
|
||||
|
||||
#: core/models.py:142 core/models.py:814 core/models.py:928
|
||||
#: core/models.py:1094
|
||||
#: core/models.py:142 core/models.py:819 core/models.py:933
|
||||
#: core/models.py:1099
|
||||
msgid "associated product"
|
||||
msgstr "相关产品"
|
||||
|
||||
|
|
@ -1058,7 +1058,7 @@ msgstr "可选择将该产品与某个品牌联系起来"
|
|||
msgid "tags that help describe or group this product"
|
||||
msgstr "有助于描述或归类该产品的标签"
|
||||
|
||||
#: core/models.py:280 core/models.py:902
|
||||
#: core/models.py:280 core/models.py:907
|
||||
msgid "product tags"
|
||||
msgstr "产品标签"
|
||||
|
||||
|
|
@ -1078,7 +1078,7 @@ msgstr "为产品提供一个明确的标识名称"
|
|||
msgid "product name"
|
||||
msgstr "产品名称"
|
||||
|
||||
#: core/models.py:297 core/models.py:1056
|
||||
#: core/models.py:297 core/models.py:1061
|
||||
msgid "add a detailed description of the product"
|
||||
msgstr "添加产品的详细描述"
|
||||
|
||||
|
|
@ -1175,7 +1175,7 @@ msgstr "订单在其生命周期中的当前状态"
|
|||
msgid "order status"
|
||||
msgstr "订单状态"
|
||||
|
||||
#: core/models.py:471 core/models.py:791
|
||||
#: core/models.py:471 core/models.py:796
|
||||
msgid "json structure of notifications to display to users"
|
||||
msgstr "向用户显示的通知的 JSON 结构,在管理用户界面中使用表格视图"
|
||||
|
||||
|
|
@ -1211,379 +1211,383 @@ msgstr "人类可读 ID"
|
|||
msgid "order"
|
||||
msgstr "订购"
|
||||
|
||||
#: core/models.py:536
|
||||
#: core/models.py:517
|
||||
msgid "a user must have only one pending order at a time"
|
||||
msgstr "用户每次只能有一个挂单!"
|
||||
|
||||
#: core/models.py:541
|
||||
msgid "you cannot add products to an order that is not a pending one"
|
||||
msgstr "您不能向非待处理订单添加产品"
|
||||
|
||||
#: core/models.py:541
|
||||
#: core/models.py:546
|
||||
msgid "you cannot add inactive products to order"
|
||||
msgstr "您不能在订单中添加非活动产品"
|
||||
|
||||
#: core/models.py:558
|
||||
#: core/models.py:563
|
||||
msgid "you cannot add more products than available in stock"
|
||||
msgstr "添加的产品数量不能超过现有库存"
|
||||
|
||||
#: core/models.py:567 core/models.py:584 core/models.py:608
|
||||
#: core/models.py:1165 core/models.py:1176
|
||||
#: core/models.py:572 core/models.py:589 core/models.py:613
|
||||
#: core/models.py:1170 core/models.py:1181
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist: {product_uuid}"
|
||||
msgstr "{name} 不存在:{product_uuid} 不存在"
|
||||
|
||||
#: core/models.py:571 core/models.py:592 core/models.py:600
|
||||
#: core/models.py:576 core/models.py:597 core/models.py:605
|
||||
msgid "you cannot remove products from an order that is not a pending one"
|
||||
msgstr "您不能从非待处理订单中删除产品"
|
||||
|
||||
#: core/models.py:588
|
||||
#: core/models.py:593
|
||||
#, python-brace-format
|
||||
msgid "{name} does not exist with query <{query}>"
|
||||
msgstr "查询 <{query}> 时 {name} 不存在"
|
||||
|
||||
#: core/models.py:619
|
||||
#: core/models.py:624
|
||||
msgid "promocode does not exist"
|
||||
msgstr "促销代码不存在"
|
||||
|
||||
#: core/models.py:626 core/models.py:665
|
||||
#: core/models.py:631 core/models.py:670
|
||||
msgid "you can not buy at this moment, please try again in a few minutes"
|
||||
msgstr "您现在无法购买,请稍后再试。"
|
||||
|
||||
#: core/models.py:629
|
||||
#: core/models.py:634
|
||||
msgid "invalid force value"
|
||||
msgstr "力值无效"
|
||||
|
||||
#: core/models.py:632 core/models.py:668
|
||||
#: core/models.py:637 core/models.py:673
|
||||
msgid "you cannot purchase an empty order!"
|
||||
msgstr "您不能购买空单!"
|
||||
|
||||
#: core/models.py:647
|
||||
#: core/models.py:652
|
||||
msgid "insufficient funds to complete the order"
|
||||
msgstr "资金不足,无法完成订单"
|
||||
|
||||
#: core/models.py:677
|
||||
#: core/models.py:682
|
||||
msgid ""
|
||||
"you cannot buy without registration, please provide the following "
|
||||
"information: customer name, customer email, customer phone number"
|
||||
msgstr "未经注册不能购买,请提供以下信息:客户姓名、客户电子邮件、客户电话号码"
|
||||
|
||||
#: core/models.py:685
|
||||
#: core/models.py:690
|
||||
msgid "invalid payment method"
|
||||
msgstr "付款方式无效"
|
||||
|
||||
#: core/models.py:701
|
||||
#: core/models.py:706
|
||||
msgid "you cannot create a momental order without providing a billing address"
|
||||
msgstr "如果不提供账单地址,就无法创建妈妈订单"
|
||||
|
||||
#: core/models.py:779
|
||||
#: core/models.py:784
|
||||
msgid "the price paid by the customer for this product at purchase time"
|
||||
msgstr "客户购买该产品时支付的价格"
|
||||
|
||||
#: core/models.py:780
|
||||
#: core/models.py:785
|
||||
msgid "purchase price at order time"
|
||||
msgstr "订购时的购买价格"
|
||||
|
||||
#: core/models.py:785
|
||||
#: core/models.py:790
|
||||
msgid "internal comments for admins about this ordered product"
|
||||
msgstr "管理员对该订购产品的内部评论"
|
||||
|
||||
#: core/models.py:786
|
||||
#: core/models.py:791
|
||||
msgid "internal comments"
|
||||
msgstr "内部意见"
|
||||
|
||||
#: core/models.py:792
|
||||
#: core/models.py:797
|
||||
msgid "user notifications"
|
||||
msgstr "用户通知"
|
||||
|
||||
#: core/models.py:797
|
||||
#: core/models.py:802
|
||||
msgid "json representation of this item's attributes"
|
||||
msgstr "该项属性的 JSON 表示形式"
|
||||
|
||||
#: core/models.py:798
|
||||
#: core/models.py:803
|
||||
msgid "ordered product attributes"
|
||||
msgstr "有序的产品属性"
|
||||
|
||||
#: core/models.py:803
|
||||
#: core/models.py:808
|
||||
msgid "reference to the parent order that contains this product"
|
||||
msgstr "对包含该产品的父订单的引用"
|
||||
|
||||
#: core/models.py:804
|
||||
#: core/models.py:809
|
||||
msgid "parent order"
|
||||
msgstr "父顺序"
|
||||
|
||||
#: core/models.py:813
|
||||
#: core/models.py:818
|
||||
msgid "the specific product associated with this order line"
|
||||
msgstr "与该订单项目相关的具体产品"
|
||||
|
||||
#: core/models.py:820
|
||||
#: core/models.py:825
|
||||
msgid "quantity of this specific product in the order"
|
||||
msgstr "订单中该特定产品的数量"
|
||||
|
||||
#: core/models.py:821
|
||||
#: core/models.py:826
|
||||
msgid "product quantity"
|
||||
msgstr "产品数量"
|
||||
|
||||
#: core/models.py:828
|
||||
#: core/models.py:833
|
||||
msgid "current status of this product in the order"
|
||||
msgstr "订单中该产品的当前状态"
|
||||
|
||||
#: core/models.py:829
|
||||
#: core/models.py:834
|
||||
msgid "product line status"
|
||||
msgstr "产品系列状态"
|
||||
|
||||
#: core/models.py:887
|
||||
#: core/models.py:892
|
||||
msgid "internal tag identifier for the product tag"
|
||||
msgstr "产品标签的内部标签标识符"
|
||||
|
||||
#: core/models.py:888
|
||||
#: core/models.py:893
|
||||
msgid "tag name"
|
||||
msgstr "标签名称"
|
||||
|
||||
#: core/models.py:892
|
||||
#: core/models.py:897
|
||||
msgid "user-friendly name for the product tag"
|
||||
msgstr "方便用户使用的产品标签名称"
|
||||
|
||||
#: core/models.py:893
|
||||
#: core/models.py:898
|
||||
msgid "tag display name"
|
||||
msgstr "标签显示名称"
|
||||
|
||||
#: core/models.py:901
|
||||
#: core/models.py:906
|
||||
msgid "product tag"
|
||||
msgstr "产品标签"
|
||||
|
||||
#: core/models.py:910
|
||||
#: core/models.py:915
|
||||
msgid "provide alternative text for the image for accessibility"
|
||||
msgstr "为图像提供替代文字,以便于访问"
|
||||
|
||||
#: core/models.py:911
|
||||
#: core/models.py:916
|
||||
msgid "image alt text"
|
||||
msgstr "图片 alt 文本"
|
||||
|
||||
#: core/models.py:914
|
||||
#: core/models.py:919
|
||||
msgid "upload the image file for this product"
|
||||
msgstr "上传该产品的图片文件"
|
||||
|
||||
#: core/models.py:915 core/models.py:940
|
||||
#: core/models.py:920 core/models.py:945
|
||||
msgid "product image"
|
||||
msgstr "产品图片"
|
||||
|
||||
#: core/models.py:921
|
||||
#: core/models.py:926
|
||||
msgid "determines the order in which images are displayed"
|
||||
msgstr "确定图像的显示顺序"
|
||||
|
||||
#: core/models.py:922
|
||||
#: core/models.py:927
|
||||
msgid "display priority"
|
||||
msgstr "显示优先级"
|
||||
|
||||
#: core/models.py:927
|
||||
#: core/models.py:932
|
||||
msgid "the product that this image represents"
|
||||
msgstr "该图片所代表的产品"
|
||||
|
||||
#: core/models.py:941
|
||||
#: core/models.py:946
|
||||
msgid "product images"
|
||||
msgstr "产品图片"
|
||||
|
||||
#: core/models.py:951
|
||||
#: core/models.py:956
|
||||
msgid "unique code used by a user to redeem a discount"
|
||||
msgstr "用户用于兑换折扣的唯一代码"
|
||||
|
||||
#: core/models.py:952
|
||||
#: core/models.py:957
|
||||
msgid "promo code identifier"
|
||||
msgstr "促销代码标识符"
|
||||
|
||||
#: core/models.py:959
|
||||
#: core/models.py:964
|
||||
msgid "fixed discount amount applied if percent is not used"
|
||||
msgstr "如果不使用百分比,则使用固定折扣额"
|
||||
|
||||
#: core/models.py:960
|
||||
#: core/models.py:965
|
||||
msgid "fixed discount amount"
|
||||
msgstr "固定折扣额"
|
||||
|
||||
#: core/models.py:966
|
||||
#: core/models.py:971
|
||||
msgid "percentage discount applied if fixed amount is not used"
|
||||
msgstr "未使用固定金额时适用的折扣百分比"
|
||||
|
||||
#: core/models.py:967
|
||||
#: core/models.py:972
|
||||
msgid "percentage discount"
|
||||
msgstr "折扣百分比"
|
||||
|
||||
#: core/models.py:972
|
||||
#: core/models.py:977
|
||||
msgid "timestamp when the promocode expires"
|
||||
msgstr "促销代码过期的时间戳"
|
||||
|
||||
#: core/models.py:973
|
||||
#: core/models.py:978
|
||||
msgid "end validity time"
|
||||
msgstr "结束有效时间"
|
||||
|
||||
#: core/models.py:978
|
||||
#: core/models.py:983
|
||||
msgid "timestamp from which this promocode is valid"
|
||||
msgstr "该促销代码有效的时间戳"
|
||||
|
||||
#: core/models.py:979
|
||||
#: core/models.py:984
|
||||
msgid "start validity time"
|
||||
msgstr "开始有效时间"
|
||||
|
||||
#: core/models.py:984
|
||||
#: core/models.py:989
|
||||
msgid "timestamp when the promocode was used, blank if not used yet"
|
||||
msgstr "使用促销代码的时间戳,如果尚未使用,则留空"
|
||||
|
||||
#: core/models.py:985
|
||||
#: core/models.py:990
|
||||
msgid "usage timestamp"
|
||||
msgstr "使用时间戳"
|
||||
|
||||
#: core/models.py:990
|
||||
#: core/models.py:995
|
||||
msgid "user assigned to this promocode if applicable"
|
||||
msgstr "分配给此促销代码的用户(如适用"
|
||||
|
||||
#: core/models.py:991
|
||||
#: core/models.py:996
|
||||
msgid "assigned user"
|
||||
msgstr "指定用户"
|
||||
|
||||
#: core/models.py:998
|
||||
#: core/models.py:1003
|
||||
msgid "promo code"
|
||||
msgstr "促销代码"
|
||||
|
||||
#: core/models.py:999
|
||||
#: core/models.py:1004
|
||||
msgid "promo codes"
|
||||
msgstr "促销代码"
|
||||
|
||||
#: core/models.py:1006
|
||||
#: core/models.py:1011
|
||||
msgid ""
|
||||
"only one type of discount should be defined (amount or percent), but not "
|
||||
"both or neither."
|
||||
msgstr "只能定义一种折扣类型(金额或百分比),而不能同时定义两种类型或两者都不定义。"
|
||||
|
||||
#: core/models.py:1021
|
||||
#: core/models.py:1026
|
||||
msgid "promocode already used"
|
||||
msgstr "促销代码已被使用"
|
||||
|
||||
#: core/models.py:1033
|
||||
#: core/models.py:1038
|
||||
#, python-brace-format
|
||||
msgid "invalid discount type for promocode {self.uuid}"
|
||||
msgstr "促销代码 {self.uuid} 的折扣类型无效"
|
||||
|
||||
#: core/models.py:1044
|
||||
#: core/models.py:1049
|
||||
msgid "percentage discount for the selected products"
|
||||
msgstr "所选产品的折扣百分比"
|
||||
|
||||
#: core/models.py:1045
|
||||
#: core/models.py:1050
|
||||
msgid "discount percentage"
|
||||
msgstr "折扣百分比"
|
||||
|
||||
#: core/models.py:1050
|
||||
#: core/models.py:1055
|
||||
msgid "provide a unique name for this promotion"
|
||||
msgstr "为该促销活动提供一个独特的名称"
|
||||
|
||||
#: core/models.py:1051
|
||||
#: core/models.py:1056
|
||||
msgid "promotion name"
|
||||
msgstr "推广名称"
|
||||
|
||||
#: core/models.py:1057
|
||||
#: core/models.py:1062
|
||||
msgid "promotion description"
|
||||
msgstr "促销说明"
|
||||
|
||||
#: core/models.py:1062
|
||||
#: core/models.py:1067
|
||||
msgid "select which products are included in this promotion"
|
||||
msgstr "选择促销活动包括哪些产品"
|
||||
|
||||
#: core/models.py:1063
|
||||
#: core/models.py:1068
|
||||
msgid "included products"
|
||||
msgstr "包括产品"
|
||||
|
||||
#: core/models.py:1067
|
||||
#: core/models.py:1072
|
||||
msgid "promotion"
|
||||
msgstr "促销活动"
|
||||
|
||||
#: core/models.py:1082
|
||||
#: core/models.py:1087
|
||||
msgid "the vendor supplying this product stock"
|
||||
msgstr "提供该产品库存的供应商"
|
||||
|
||||
#: core/models.py:1083
|
||||
#: core/models.py:1088
|
||||
msgid "associated vendor"
|
||||
msgstr "相关供应商"
|
||||
|
||||
#: core/models.py:1087
|
||||
#: core/models.py:1092
|
||||
msgid "final price to the customer after markups"
|
||||
msgstr "加价后给客户的最终价格"
|
||||
|
||||
#: core/models.py:1088
|
||||
#: core/models.py:1093
|
||||
msgid "selling price"
|
||||
msgstr "销售价格"
|
||||
|
||||
#: core/models.py:1093
|
||||
#: core/models.py:1098
|
||||
msgid "the product associated with this stock entry"
|
||||
msgstr "与该库存条目相关的产品"
|
||||
|
||||
#: core/models.py:1101
|
||||
#: core/models.py:1106
|
||||
msgid "the price paid to the vendor for this product"
|
||||
msgstr "为该产品支付给供应商的价格"
|
||||
|
||||
#: core/models.py:1102
|
||||
#: core/models.py:1107
|
||||
msgid "vendor purchase price"
|
||||
msgstr "供应商购买价格"
|
||||
|
||||
#: core/models.py:1106
|
||||
#: core/models.py:1111
|
||||
msgid "available quantity of the product in stock"
|
||||
msgstr "产品的可用库存量"
|
||||
|
||||
#: core/models.py:1107
|
||||
#: core/models.py:1112
|
||||
msgid "quantity in stock"
|
||||
msgstr "库存数量"
|
||||
|
||||
#: core/models.py:1111
|
||||
#: core/models.py:1116
|
||||
msgid "vendor-assigned SKU for identifying the product"
|
||||
msgstr "供应商指定的 SKU,用于识别产品"
|
||||
|
||||
#: core/models.py:1112
|
||||
#: core/models.py:1117
|
||||
msgid "vendor sku"
|
||||
msgstr "供应商 SKU"
|
||||
|
||||
#: core/models.py:1118
|
||||
#: core/models.py:1123
|
||||
msgid "digital file associated with this stock if applicable"
|
||||
msgstr "与该库存相关的数字文件(如适用"
|
||||
|
||||
#: core/models.py:1119
|
||||
#: core/models.py:1124
|
||||
msgid "digital file"
|
||||
msgstr "数字文件"
|
||||
|
||||
#: core/models.py:1128
|
||||
#: core/models.py:1133
|
||||
msgid "stock entries"
|
||||
msgstr "库存条目"
|
||||
|
||||
#: core/models.py:1137
|
||||
#: core/models.py:1142
|
||||
msgid "products that the user has marked as wanted"
|
||||
msgstr "用户标记为想要的产品"
|
||||
|
||||
#: core/models.py:1145
|
||||
#: core/models.py:1150
|
||||
msgid "user who owns this wishlist"
|
||||
msgstr "拥有此愿望清单的用户"
|
||||
|
||||
#: core/models.py:1146
|
||||
#: core/models.py:1151
|
||||
msgid "wishlist owner"
|
||||
msgstr "心愿单所有者"
|
||||
|
||||
#: core/models.py:1154
|
||||
#: core/models.py:1159
|
||||
msgid "wishlist"
|
||||
msgstr "愿望清单"
|
||||
|
||||
#: core/models.py:1194
|
||||
#: core/models.py:1199
|
||||
msgid "download"
|
||||
msgstr "下载"
|
||||
|
||||
#: core/models.py:1195
|
||||
#: core/models.py:1200
|
||||
msgid "downloads"
|
||||
msgstr "下载"
|
||||
|
||||
#: core/models.py:1203
|
||||
#: core/models.py:1208
|
||||
msgid "you can not download a digital asset for a non-finished order"
|
||||
msgstr "您无法下载未完成订单的数字资产"
|
||||
|
||||
#: core/models.py:1215
|
||||
#: core/models.py:1220
|
||||
msgid "documentary"
|
||||
msgstr "纪录片"
|
||||
|
||||
#: core/models.py:1216
|
||||
#: core/models.py:1221
|
||||
msgid "documentaries"
|
||||
msgstr "纪录片"
|
||||
|
||||
#: core/models.py:1226
|
||||
#: core/models.py:1231
|
||||
msgid "unresolved"
|
||||
msgstr "未解决"
|
||||
|
||||
|
|
|
|||
|
|
@ -39,8 +39,8 @@ from mptt.models import MPTTModel
|
|||
|
||||
from core.abstract import NiceModel
|
||||
from core.choices import ORDER_PRODUCT_STATUS_CHOICES, ORDER_STATUS_CHOICES
|
||||
from core.errors import NotEnoughMoneyError, DisabledCommerceError
|
||||
from core.utils import get_product_uuid_as_path, get_random_code, generate_human_readable_id
|
||||
from core.errors import DisabledCommerceError, NotEnoughMoneyError
|
||||
from core.utils import generate_human_readable_id, get_product_uuid_as_path, get_random_code
|
||||
from core.utils.lists import FAILED_STATUSES
|
||||
from core.validators import validate_category_image_dimensions
|
||||
from evibes.settings import CURRENCY_CODE
|
||||
|
|
@ -512,19 +512,24 @@ class Order(NiceModel):
|
|||
def is_business(self) -> bool:
|
||||
return self.attributes.get("is_business", False) if self.attributes else False
|
||||
|
||||
def save(self, **kwargs):
|
||||
if self.user.orders.filter(status="PENDING").count() > 1 and self.status == "PENDING":
|
||||
raise ValueError(_("a user must have only one pending order at a time"))
|
||||
return super().save(**kwargs)
|
||||
|
||||
@property
|
||||
def total_price(self) -> float:
|
||||
return (
|
||||
round(
|
||||
sum(
|
||||
order_product.buy_price * order_product.quantity
|
||||
if order_product.status not in FAILED_STATUSES and order_product.buy_price is not None
|
||||
else 0.0
|
||||
for order_product in self.order_products.all()
|
||||
),
|
||||
2,
|
||||
)
|
||||
or 0.0
|
||||
round(
|
||||
sum(
|
||||
order_product.buy_price * order_product.quantity
|
||||
if order_product.status not in FAILED_STATUSES and order_product.buy_price is not None
|
||||
else 0.0
|
||||
for order_product in self.order_products.all()
|
||||
),
|
||||
2,
|
||||
)
|
||||
or 0.0
|
||||
)
|
||||
|
||||
@property
|
||||
|
|
@ -620,7 +625,7 @@ class Order(NiceModel):
|
|||
return promocode.use(self)
|
||||
|
||||
def buy(
|
||||
self, force_balance: bool = False, force_payment: bool = False, promocode_uuid: str | None = None
|
||||
self, force_balance: bool = False, force_payment: bool = False, promocode_uuid: str | None = None
|
||||
) -> Self | Transaction | None:
|
||||
if config.DISABLED_COMMERCE:
|
||||
raise DisabledCommerceError(_("you can not buy at this moment, please try again in a few minutes"))
|
||||
|
|
@ -691,12 +696,12 @@ class Order(NiceModel):
|
|||
billing_customer_address_line = billing_customer_address.pop("customer_address_line")
|
||||
|
||||
if not all(
|
||||
[
|
||||
billing_customer_city,
|
||||
billing_customer_country,
|
||||
billing_customer_postal_code,
|
||||
billing_customer_address_line,
|
||||
]
|
||||
[
|
||||
billing_customer_city,
|
||||
billing_customer_country,
|
||||
billing_customer_postal_code,
|
||||
billing_customer_address_line,
|
||||
]
|
||||
):
|
||||
raise ValueError(_("you cannot create a momental order without providing a billing address"))
|
||||
|
||||
|
|
@ -755,16 +760,16 @@ class Order(NiceModel):
|
|||
|
||||
def finalize(self):
|
||||
if (
|
||||
self.order_products.filter(
|
||||
status__in=[
|
||||
"ACCEPTED",
|
||||
"FAILED",
|
||||
"RETURNED",
|
||||
"CANCELED",
|
||||
"FINISHED",
|
||||
]
|
||||
).count()
|
||||
== self.order_products.count()
|
||||
self.order_products.filter(
|
||||
status__in=[
|
||||
"ACCEPTED",
|
||||
"FAILED",
|
||||
"RETURNED",
|
||||
"CANCELED",
|
||||
"FINISHED",
|
||||
]
|
||||
).count()
|
||||
== self.order_products.count()
|
||||
):
|
||||
self.status = "FINISHED"
|
||||
self.save()
|
||||
|
|
@ -1000,7 +1005,7 @@ class PromoCode(NiceModel):
|
|||
|
||||
def save(self, **kwargs):
|
||||
if (self.discount_amount is not None and self.discount_percent is not None) or (
|
||||
self.discount_amount is None and self.discount_percent is None
|
||||
self.discount_amount is None and self.discount_percent is None
|
||||
):
|
||||
raise ValidationError(
|
||||
_("only one type of discount should be defined (amount or percent), but not both or neither.")
|
||||
|
|
|
|||
|
|
@ -223,9 +223,14 @@ class OrderViewSet(EvibesViewSet):
|
|||
|
||||
@action(detail=False, methods=["get"], url_path="current")
|
||||
def current(self, request, *_args, **kwargs):
|
||||
if not request.user.is_authenticated:
|
||||
raise PermissionDenied(permission_denied_message)
|
||||
order = Order.objects.get(user=request.user, status="PENDING")
|
||||
if not request.user == order.user:
|
||||
raise PermissionDenied(permission_denied_message)
|
||||
return Response(
|
||||
status=status.HTTP_200_OK,
|
||||
data=OrderDetailSerializer(Order.objects.filter(user=request.user)).data,
|
||||
data=OrderDetailSerializer(order).data,
|
||||
)
|
||||
|
||||
@action(detail=True, methods=["post"], url_path="buy")
|
||||
|
|
@ -377,9 +382,14 @@ class WishlistViewSet(EvibesViewSet):
|
|||
|
||||
@action(detail=False, methods=["get"], url_path="current")
|
||||
def current(self, request, *_args, **kwargs):
|
||||
if not request.user.is_authenticated:
|
||||
raise PermissionDenied(permission_denied_message)
|
||||
wishlist = Wishlist.objects.get(user=request.user)
|
||||
if not request.user == wishlist.user:
|
||||
raise PermissionDenied(permission_denied_message)
|
||||
return Response(
|
||||
status=status.HTTP_200_OK,
|
||||
data=WishlistDetailSerializer(Wishlist.objects.get(user=request.user)).data,
|
||||
data=WishlistDetailSerializer().data,
|
||||
)
|
||||
|
||||
@action(detail=True, methods=["post"], url_path="add_wishlist_product")
|
||||
|
|
@ -396,7 +406,7 @@ class WishlistViewSet(EvibesViewSet):
|
|||
)
|
||||
|
||||
return Response(status=status.HTTP_200_OK, data=WishlistDetailSerializer(wishlist).data)
|
||||
except Order.DoesNotExist:
|
||||
except Wishlist.DoesNotExist:
|
||||
return Response(status=status.HTTP_404_NOT_FOUND)
|
||||
|
||||
@action(detail=True, methods=["post"], url_path="remove_wishlist_product")
|
||||
|
|
@ -413,7 +423,7 @@ class WishlistViewSet(EvibesViewSet):
|
|||
)
|
||||
|
||||
return Response(status=status.HTTP_200_OK, data=WishlistDetailSerializer(wishlist).data)
|
||||
except Order.DoesNotExist:
|
||||
except Wishlist.DoesNotExist:
|
||||
return Response(status=status.HTTP_404_NOT_FOUND)
|
||||
|
||||
@action(detail=True, methods=["post"], url_path="bulk_add_wishlist_product")
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import logging
|
|||
from os import getenv
|
||||
from pathlib import Path
|
||||
|
||||
EVIBES_VERSION = "2.6.1"
|
||||
EVIBES_VERSION = "2.6.2"
|
||||
|
||||
BASE_DIR = Path(__file__).resolve().parent.parent.parent
|
||||
|
||||
|
|
@ -297,6 +297,8 @@ if getenv("SENTRY_DSN"):
|
|||
ignore_errors = [
|
||||
"flower.views.error.NotFoundErrorHandler",
|
||||
"django.http.response.Http404",
|
||||
"django.core.exceptions.PermissionDenied",
|
||||
"django.core.exceptions.BadRequest",
|
||||
"billiard.exceptions.SoftTimeLimitExceeded",
|
||||
"core.models.Attribute.DoesNotExist",
|
||||
"core.models.AttributeGroup.DoesNotExist",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[tool.poetry]
|
||||
name = "eVibes"
|
||||
version = "2.6.1"
|
||||
version = "2.6.2"
|
||||
description = "eVibes is an open-source eCommerce backend service built with Django. It’s designed for flexibility, making it ideal for various use cases and learning Django skills. The project is easy to customize, allowing for straightforward editing and extension."
|
||||
authors = ["fureunoir <contact@fureunoir.com>"]
|
||||
readme = "README.md"
|
||||
|
|
|
|||
0
vibes_auth/docs/__init__.py
Normal file
0
vibes_auth/docs/__init__.py
Normal file
0
vibes_auth/docs/drf/__init__.py
Normal file
0
vibes_auth/docs/drf/__init__.py
Normal file
70
vibes_auth/docs/drf/views.py
Normal file
70
vibes_auth/docs/drf/views.py
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
from django.utils.translation import gettext_lazy as _
|
||||
from drf_spectacular.utils import extend_schema, inline_serializer
|
||||
from rest_framework import serializers, status
|
||||
|
||||
from core.docs.drf import error
|
||||
from vibes_auth.serializers import (
|
||||
TokenObtainPairSerializer,
|
||||
TokenRefreshSerializer,
|
||||
TokenVerifySerializer,
|
||||
UserSerializer,
|
||||
)
|
||||
|
||||
TOKEN_OBTAIN_SCHEMA = {
|
||||
"post": extend_schema(
|
||||
summary=_("obtain a token pair"),
|
||||
description=_("obtain a token pair (refresh and access) for authentication."),
|
||||
request=TokenObtainPairSerializer,
|
||||
responses={
|
||||
status.HTTP_200_OK: inline_serializer(
|
||||
"TokenObtain",
|
||||
fields={
|
||||
"refresh": serializers.CharField(),
|
||||
"access": serializers.CharField(),
|
||||
"user": UserSerializer(),
|
||||
},
|
||||
),
|
||||
status.HTTP_400_BAD_REQUEST: error,
|
||||
status.HTTP_401_UNAUTHORIZED: error,
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
TOKEN_REFRESH_SCHEMA = {
|
||||
"post": extend_schema(
|
||||
summary=_("refresh a token pair"),
|
||||
description=_("refresh a token pair (refresh and access)."),
|
||||
request=TokenRefreshSerializer,
|
||||
responses={
|
||||
status.HTTP_200_OK: inline_serializer(
|
||||
"TokenRefreshResponse",
|
||||
fields={
|
||||
"refresh": serializers.CharField(),
|
||||
"access": serializers.CharField(),
|
||||
"user": UserSerializer(),
|
||||
},
|
||||
),
|
||||
status.HTTP_400_BAD_REQUEST: error,
|
||||
status.HTTP_401_UNAUTHORIZED: error,
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
TOKEN_VERIFY_SCHEMA = {
|
||||
"post": extend_schema(
|
||||
summary=_("verify a token"),
|
||||
description=_("Verify a token (refresh or access)."),
|
||||
request=TokenVerifySerializer,
|
||||
responses={
|
||||
status.HTTP_200_OK: inline_serializer(
|
||||
"TokenVerifyResponse",
|
||||
fields={
|
||||
"token": serializers.CharField(choices=["valid", "no valid"]),
|
||||
"user": UserSerializer(),
|
||||
},
|
||||
),
|
||||
status.HTTP_400_BAD_REQUEST: error,
|
||||
status.HTTP_401_UNAUTHORIZED: error,
|
||||
},
|
||||
)
|
||||
}
|
||||
66
vibes_auth/docs/drf/viewsets.py
Normal file
66
vibes_auth/docs/drf/viewsets.py
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
from django.utils.translation import gettext_lazy as _
|
||||
from drf_spectacular.utils import extend_schema
|
||||
from rest_framework import status
|
||||
|
||||
from core.docs.drf import BASE_ERRORS
|
||||
from vibes_auth.serializers import (
|
||||
ActivateEmailSerializer,
|
||||
ConfirmPasswordResetSerializer,
|
||||
ResetPasswordSerializer,
|
||||
UserSerializer,
|
||||
)
|
||||
|
||||
USER_SCHEMA = {
|
||||
"create": extend_schema(
|
||||
summary=_("create a new user"),
|
||||
responses={status.HTTP_201_CREATED: UserSerializer, **BASE_ERRORS},
|
||||
),
|
||||
"retrieve": extend_schema(
|
||||
summary=_("retrieve a user's details"),
|
||||
responses={status.HTTP_200_OK: UserSerializer, **BASE_ERRORS},
|
||||
),
|
||||
"update": extend_schema(
|
||||
summary=_("update a user's details"),
|
||||
request=UserSerializer,
|
||||
responses={status.HTTP_200_OK: UserSerializer}, **BASE_ERRORS,
|
||||
),
|
||||
"destroy": extend_schema(
|
||||
summary=_("delete a user"),
|
||||
responses={status.HTTP_204_NO_CONTENT: {}, **BASE_ERRORS},
|
||||
),
|
||||
"reset_password": extend_schema(
|
||||
summary=_("reset a user's password by sending a reset password email"),
|
||||
request=ResetPasswordSerializer,
|
||||
responses={
|
||||
status.HTTP_200_OK: {},
|
||||
**BASE_ERRORS
|
||||
},
|
||||
),
|
||||
"upload_avatar": extend_schema(
|
||||
summary=_("handle avatar upload for a user"),
|
||||
responses={
|
||||
status.HTTP_200_OK: UserSerializer,
|
||||
status.HTTP_400_BAD_REQUEST: {"description": "Invalid Request"},
|
||||
status.HTTP_403_FORBIDDEN: {"description": "Bad credentials"},
|
||||
**BASE_ERRORS
|
||||
},
|
||||
),
|
||||
"confirm_password_reset": extend_schema(
|
||||
summary=_("confirm a user's password reset"),
|
||||
request=ConfirmPasswordResetSerializer,
|
||||
responses={
|
||||
status.HTTP_200_OK: {"description": "Password reset successfully"},
|
||||
status.HTTP_400_BAD_REQUEST: {"description": _("passwords do not match")},
|
||||
**BASE_ERRORS
|
||||
},
|
||||
),
|
||||
"activate": extend_schema(
|
||||
summary=_("activate a user's account"),
|
||||
request=ActivateEmailSerializer,
|
||||
responses={
|
||||
status.HTTP_200_OK: UserSerializer,
|
||||
status.HTTP_400_BAD_REQUEST: {"description": _("activation link is invalid or account already activated")},
|
||||
**BASE_ERRORS
|
||||
},
|
||||
),
|
||||
}
|
||||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: ar-AR\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,73 @@ msgstr "معلومات إضافية"
|
|||
msgid "authentication"
|
||||
msgstr "المصادقة"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "الحصول على زوج رمزي"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "الحصول على زوج رمز مميز (التحديث والوصول) للمصادقة."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "تحديث زوج من الرمز المميز"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "تحديث زوج الرموز (التحديث والوصول)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "التحقق من الرمز المميز"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "التحقق من الرمز المميز (التحديث أو الوصول)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "إنشاء مستخدم جديد"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "استرداد تفاصيل المستخدم"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "تحديث تفاصيل المستخدم"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "حذف مستخدم"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"إعادة تعيين كلمة مرور المستخدم عن طريق إرسال بريد إلكتروني لإعادة تعيين كلمة"
|
||||
" المرور"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "التعامل مع تحميل الصورة الرمزية للمستخدم"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "تأكيد إعادة تعيين كلمة مرور المستخدم"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "كلمات المرور غير متطابقة"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "تنشيط حساب مستخدم"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "رابط التفعيل غير صالح أو أن الحساب مفعل بالفعل"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr "معرّف المستخدم الذي تم ترميزه بـ b64 الذي أحال المستخدم الجديد إلينا."
|
||||
|
|
@ -74,7 +136,8 @@ msgstr "رقم هاتف مشوّه: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "تنسيق السمة غير صالح: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "رابط التفعيل غير صالح!"
|
||||
|
||||
|
|
@ -86,11 +149,7 @@ msgstr "تم تفعيل الحساب بالفعل..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "حدث خطأ ما: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "كلمات المرور غير متطابقة"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "الرمز غير صالح!"
|
||||
|
||||
|
|
@ -345,3 +404,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"تنسيق رقم الهاتف غير صالح. يجب إدخال الرقم بالصيغة: \"+999999999\". يُسمح "
|
||||
"بإدخال 15 رقماً كحد أقصى."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "الرمز المميز صالح"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "الرمز المميز غير صالح"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "تمت إعادة تعيين كلمة المرور بنجاح!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "لقد قمت بتفعيل الحساب بالفعل..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: cs-CZ\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,71 @@ msgstr "Další informace"
|
|||
msgid "authentication"
|
||||
msgstr "Ověřování"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Získání páru tokenů"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "Získat pár tokenů (obnovení a přístup) pro ověření."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Obnovení páru tokenů"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Obnovení dvojice tokenů (obnovení a přístup)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Ověření tokenu"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Ověření tokenu (obnovení nebo přístup)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Vytvoření nového uživatele"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Získání údajů o uživateli"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Aktualizace údajů uživatele"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Odstranění uživatele"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr "Obnovení hesla uživatele odesláním e-mailu s obnovením hesla."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Zpracování nahrávání avataru pro uživatele"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Potvrzení obnovení hesla uživatele"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Hesla se neshodují"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Aktivace účtu uživatele"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Aktivační odkaz je neplatný nebo je účet již aktivován"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr "Uuid uživatele s kódem b64, který nám nového uživatele doporučil."
|
||||
|
|
@ -74,7 +134,8 @@ msgstr "Chybně zadané telefonní číslo: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Nesprávný formát atributu: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Aktivační odkaz je neplatný!"
|
||||
|
||||
|
|
@ -86,11 +147,7 @@ msgstr "Účet byl již aktivován..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Něco se pokazilo: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Hesla se neshodují"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Token je neplatný!"
|
||||
|
||||
|
|
@ -311,8 +368,7 @@ msgid ""
|
|||
"if the button above does not work, please copy and paste the following URL\n"
|
||||
" into your web browser:"
|
||||
msgstr ""
|
||||
"Pokud výše uvedené tlačítko nefunguje, zkopírujte a vložte následující "
|
||||
"adresu URL\n"
|
||||
"Pokud výše uvedené tlačítko nefunguje, zkopírujte a vložte následující adresu URL\n"
|
||||
" do webového prohlížeče:"
|
||||
|
||||
#: vibes_auth/templates/user_verification_email.html:101
|
||||
|
|
@ -346,3 +402,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Nesprávný formát telefonního čísla. Číslo musí být zadáno ve formátu: "
|
||||
"\"+999999999\". Povoleno je až 15 číslic."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "Token je platný"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "Token je neplatný"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "Heslo bylo úspěšně resetováno!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Účet jste již aktivovali..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: da-DK\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,73 @@ msgstr "Yderligere information"
|
|||
msgid "authentication"
|
||||
msgstr "Autentificering"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Få et token-par"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "Hent et tokenpar (refresh og access) til autentificering."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Opdater et token-par"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Opdater et tokenpar (refresh og access)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Bekræft et token"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Bekræft et token (opdatering eller adgang)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Opret en ny bruger"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Hent oplysninger om en bruger"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Opdater en brugers oplysninger"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Slet en bruger"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"Nulstil en brugers adgangskode ved at sende en e-mail om nulstilling af "
|
||||
"adgangskode"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Håndter upload af avatar for en bruger"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Bekræft nulstilling af en brugers adgangskode"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Adgangskoderne stemmer ikke overens"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Aktivér en brugers konto"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Aktiveringslinket er ugyldigt, eller kontoen er allerede aktiveret"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr "Brugerens b64-kodede uuid, som henviste den nye bruger til os."
|
||||
|
|
@ -74,7 +136,8 @@ msgstr "Misdannet telefonnummer: {phone_number}."
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Ugyldigt attributformat: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Aktiveringslinket er ugyldigt!"
|
||||
|
||||
|
|
@ -86,11 +149,7 @@ msgstr "Kontoen er allerede aktiveret..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Noget gik galt: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Adgangskoderne stemmer ikke overens"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Token er ugyldig!"
|
||||
|
||||
|
|
@ -312,8 +371,7 @@ msgid ""
|
|||
"if the button above does not work, please copy and paste the following URL\n"
|
||||
" into your web browser:"
|
||||
msgstr ""
|
||||
"Hvis ovenstående knap ikke virker, bedes du kopiere og indsætte følgende "
|
||||
"URL\n"
|
||||
"Hvis ovenstående knap ikke virker, bedes du kopiere og indsætte følgende URL\n"
|
||||
" i din webbrowser:"
|
||||
|
||||
#: vibes_auth/templates/user_verification_email.html:101
|
||||
|
|
@ -347,3 +405,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Ugyldigt telefonnummerformat. Nummeret skal indtastes i formatet: "
|
||||
"\"+999999999\". Op til 15 cifre er tilladt."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "Tokenet er gyldigt"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "Tokenet er ugyldigt"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "Adgangskoden er blevet nulstillet med succes!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Du har allerede aktiveret kontoen..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: de-DE\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,11 +46,79 @@ msgstr "Zusätzliche Informationen"
|
|||
msgid "authentication"
|
||||
msgstr "Authentifizierung"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Erhalten Sie ein Token-Paar"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr ""
|
||||
"Beziehen Sie ein Token-Paar (Refresh und Access) für die Authentifizierung."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Ein Token-Paar aktualisieren"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Auffrischen eines Tokenpaares (Refresh und Access)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Überprüfen eines Tokens"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Überprüfen eines Tokens (Aktualisierung oder Zugriff)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Einen neuen Benutzer anlegen"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Abrufen der Details eines Benutzers"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Aktualisieren der Benutzerdaten"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Einen Benutzer löschen"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"Zurücksetzen des Kennworts eines Benutzers durch Senden einer E-Mail zum "
|
||||
"Zurücksetzen des Kennworts"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Avatar-Upload für einen Benutzer verwalten"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Bestätigen Sie das Zurücksetzen des Passworts eines Benutzers"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Passwörter stimmen nicht überein"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Aktivieren eines Benutzerkontos"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Aktivierungslink ist ungültig oder Konto bereits aktiviert"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr ""
|
||||
"Die b64-kodierte uuid des Benutzers, der den neuen Benutzer an uns verwiesen "
|
||||
"hat."
|
||||
"Die b64-kodierte uuid des Benutzers, der den neuen Benutzer an uns verwiesen"
|
||||
" hat."
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:103
|
||||
#, python-brace-format
|
||||
|
|
@ -76,7 +139,8 @@ msgstr "Fehlerhafte Telefonnummer: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Ungültiges Attributformat: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Der Aktivierungslink ist ungültig!"
|
||||
|
||||
|
|
@ -88,11 +152,7 @@ msgstr "Das Konto wurde bereits aktiviert..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Etwas ist schief gelaufen: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Passwörter stimmen nicht überein"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Token ist ungültig!"
|
||||
|
||||
|
|
@ -276,8 +336,8 @@ msgstr ""
|
|||
#: vibes_auth/templates/user_reset_password_email.html:88
|
||||
msgid "if you did not send this request, please ignore this email."
|
||||
msgstr ""
|
||||
"Wenn Sie diese Anfrage nicht gesendet haben, ignorieren Sie bitte diese E-"
|
||||
"Mail."
|
||||
"Wenn Sie diese Anfrage nicht gesendet haben, ignorieren Sie bitte diese "
|
||||
"E-Mail."
|
||||
|
||||
#: vibes_auth/templates/user_reset_password_email.html:89
|
||||
#, python-format
|
||||
|
|
@ -316,8 +376,7 @@ msgid ""
|
|||
"if the button above does not work, please copy and paste the following URL\n"
|
||||
" into your web browser:"
|
||||
msgstr ""
|
||||
"Wenn die obige Schaltfläche nicht funktioniert, kopieren Sie bitte die "
|
||||
"folgende URL und fügen Sie sie in Ihren Browser ein\n"
|
||||
"Wenn die obige Schaltfläche nicht funktioniert, kopieren Sie bitte die folgende URL und fügen Sie sie in Ihren Browser ein\n"
|
||||
" in Ihren Webbrowser ein:"
|
||||
|
||||
#: vibes_auth/templates/user_verification_email.html:101
|
||||
|
|
@ -351,3 +410,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Ungültiges Telefonnummernformat. Die Nummer muss in dem Format eingegeben "
|
||||
"werden: \"+999999999\". Bis zu 15 Ziffern sind erlaubt."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "Das Token ist gültig"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "Das Token ist ungültig"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "Das Passwort wurde erfolgreich zurückgesetzt!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Sie haben das Konto bereits aktiviert..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,12 +3,12 @@
|
|||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
# ,fuzzy
|
||||
#,fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -51,6 +51,71 @@ msgstr "Additional Info"
|
|||
msgid "authentication"
|
||||
msgstr "Authentication"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Obtain a token pair"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "Obtain a token pair (refresh and access) for authentication."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Refresh a token pair"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Refresh a token pair (refresh and access)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Verify a token"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Verify a token (refresh or access)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Create a new user"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Retrieve a user's details"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Update a user's details"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Delete a user"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr "Reset a user's password by sending a reset password email"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Handle avatar upload for a user"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Confirm a user's password reset"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Passwords do not match"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Activate a user's account"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Activation link is invalid or account already activated"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr "The user's b64-encoded uuid who referred the new user to us."
|
||||
|
|
@ -74,7 +139,8 @@ msgstr "Malformed phone number: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Invalid attribute format: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Activation link is invalid!"
|
||||
|
||||
|
|
@ -86,11 +152,7 @@ msgstr "Account has been already activated..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Something went wrong: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Passwords do not match"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Token is invalid!"
|
||||
|
||||
|
|
@ -345,3 +407,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Invalid phone number format. The number must be entered in the format: "
|
||||
"\"+999999999\". Up to 15 digits allowed."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "The token is valid"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "The token is invalid"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "Password has been reset successfully!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "You have already activated the account..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: en-US\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,71 @@ msgstr "Additional Info"
|
|||
msgid "authentication"
|
||||
msgstr "Authentication"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Obtain a token pair"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "Obtain a token pair (refresh and access) for authentication."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Refresh a token pair"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Refresh a token pair (refresh and access)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Verify a token"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Verify a token (refresh or access)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Create a new user"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Retrieve a user's details"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Update a user's details"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Delete a user"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr "Reset a user's password by sending a reset password email"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Handle avatar upload for a user"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Confirm a user's password reset"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Passwords do not match"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Activate a user's account"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Activation link is invalid or account already activated"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr "The user's b64-encoded uuid who referred the new user to us."
|
||||
|
|
@ -74,7 +134,8 @@ msgstr "Malformed phone number: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Invalid attribute format: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Activation link is invalid!"
|
||||
|
||||
|
|
@ -86,11 +147,7 @@ msgstr "Account has been already activated..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Something went wrong: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Passwords do not match"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Token is invalid!"
|
||||
|
||||
|
|
@ -345,3 +402,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Invalid phone number format. The number must be entered in the format: "
|
||||
"\"+999999999\". Up to 15 digits allowed."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "The token is valid"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "The token is invalid"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "Password has been reset successfully!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "You have already activated the account..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: es-ES\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,73 @@ msgstr "Información adicional"
|
|||
msgid "authentication"
|
||||
msgstr "Autenticación"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Obtener un par de fichas"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "Obtener un par de tokens (refresco y acceso) para la autenticación."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Actualizar un par de fichas"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Refrescar un par de fichas (refrescar y acceder)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Verificar un token"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Verificar un token (actualización o acceso)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Crear un nuevo usuario"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Recuperar los datos de un usuario"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Actualizar los datos de un usuario"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Eliminar un usuario"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"Restablecer la contraseña de un usuario enviando un correo electrónico de "
|
||||
"restablecimiento de contraseña"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Gestionar la subida de avatares de un usuario"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Confirmar el restablecimiento de la contraseña de un usuario"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Las contraseñas no coinciden"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Activar la cuenta de un usuario"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "El enlace de activación no es válido o la cuenta ya está activada"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr ""
|
||||
|
|
@ -75,7 +137,8 @@ msgstr "Número de teléfono malformado: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Formato de atributo no válido: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "El enlace de activación no es válido."
|
||||
|
||||
|
|
@ -87,11 +150,7 @@ msgstr "La cuenta ya ha sido activada..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Algo salió mal: {e!s}."
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Las contraseñas no coinciden"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "¡La ficha no es válida!"
|
||||
|
||||
|
|
@ -346,3 +405,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Formato de número de teléfono no válido. El número debe introducirse con el "
|
||||
"formato \"+999999999\". Se permiten hasta 15 dígitos."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "El token es válido"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "El token no es válido"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "La contraseña se ha restablecido correctamente."
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Ya ha activado la cuenta..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: fr-FR\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,75 @@ msgstr "Informations complémentaires"
|
|||
msgid "authentication"
|
||||
msgstr "Authentification"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Obtenir une paire de jetons"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr ""
|
||||
"Obtenir une paire de jetons (rafraîchissement et accès) pour "
|
||||
"l'authentification."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Rafraîchir une paire de jetons"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Rafraîchir une paire de jetons (rafraîchir et accéder)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Vérifier un jeton"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Vérifier un jeton (rafraîchissement ou accès)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Créer un nouvel utilisateur"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Récupérer les données d'un utilisateur"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Mettre à jour les coordonnées d'un utilisateur"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Supprimer un utilisateur"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"Réinitialiser le mot de passe d'un utilisateur en envoyant un courriel de "
|
||||
"réinitialisation du mot de passe"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Gérer le téléchargement d'un avatar pour un utilisateur"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Confirmer la réinitialisation du mot de passe d'un utilisateur"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Les mots de passe ne correspondent pas"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Activer le compte d'un utilisateur"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Le lien d'activation n'est pas valide ou le compte est déjà activé"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr ""
|
||||
|
|
@ -76,7 +140,8 @@ msgstr "Numéro de téléphone malformé : {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Format d'attribut non valide : {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Le lien d'activation n'est pas valide !"
|
||||
|
||||
|
|
@ -88,11 +153,7 @@ msgstr "Le compte a déjà été activé..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Quelque chose a mal tourné : {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Les mots de passe ne correspondent pas"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Le jeton n'est pas valide !"
|
||||
|
||||
|
|
@ -230,7 +291,8 @@ msgstr "Jeton non valide"
|
|||
|
||||
#: vibes_auth/serializers.py:196
|
||||
msgid "no user uuid claim present in token"
|
||||
msgstr "Aucune revendication d'uuid d'utilisateur n'est présente dans le jeton"
|
||||
msgstr ""
|
||||
"Aucune revendication d'uuid d'utilisateur n'est présente dans le jeton"
|
||||
|
||||
#: vibes_auth/serializers.py:198
|
||||
msgid "user does not exist"
|
||||
|
|
@ -278,7 +340,8 @@ msgstr ""
|
|||
|
||||
#: vibes_auth/templates/user_reset_password_email.html:88
|
||||
msgid "if you did not send this request, please ignore this email."
|
||||
msgstr "Si vous n'avez pas envoyé cette demande, veuillez ignorer ce courriel."
|
||||
msgstr ""
|
||||
"Si vous n'avez pas envoyé cette demande, veuillez ignorer ce courriel."
|
||||
|
||||
#: vibes_auth/templates/user_reset_password_email.html:89
|
||||
#, python-format
|
||||
|
|
@ -301,8 +364,8 @@ msgid ""
|
|||
"thank you for signing up for %(project_name)s. please activate your account "
|
||||
"by clicking the button below:"
|
||||
msgstr ""
|
||||
"Merci de vous être inscrit à %(project_name)s. Veuillez activer votre compte "
|
||||
"en cliquant sur le bouton ci-dessous :"
|
||||
"Merci de vous être inscrit à %(project_name)s. Veuillez activer votre compte"
|
||||
" en cliquant sur le bouton ci-dessous :"
|
||||
|
||||
#: vibes_auth/templates/user_verification_email.html:95
|
||||
msgid ""
|
||||
|
|
@ -317,8 +380,7 @@ msgid ""
|
|||
"if the button above does not work, please copy and paste the following URL\n"
|
||||
" into your web browser:"
|
||||
msgstr ""
|
||||
"Si le bouton ci-dessus ne fonctionne pas, veuillez copier et coller l'URL "
|
||||
"suivante\n"
|
||||
"Si le bouton ci-dessus ne fonctionne pas, veuillez copier et coller l'URL suivante\n"
|
||||
" suivante dans votre navigateur web :"
|
||||
|
||||
#: vibes_auth/templates/user_verification_email.html:101
|
||||
|
|
@ -352,3 +414,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Format de numéro de téléphone non valide. Le numéro doit être saisi au "
|
||||
"format : \"+999999999\". Un maximum de 15 chiffres est autorisé."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "Le jeton est valide"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "Le jeton n'est pas valide"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "Le mot de passe a été réinitialisé avec succès !"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Vous avez déjà activé le compte..."
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
|
@ -50,6 +50,71 @@ msgstr ""
|
|||
msgid "authentication"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr ""
|
||||
|
|
@ -73,7 +138,8 @@ msgstr ""
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -85,11 +151,7 @@ msgstr ""
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -332,3 +394,19 @@ msgid ""
|
|||
"invalid phone number format. the number must be entered in the format: "
|
||||
"\"+999999999\". up to 15 digits allowed."
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr ""
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: it-IT\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,74 @@ msgstr "Ulteriori informazioni"
|
|||
msgid "authentication"
|
||||
msgstr "Autenticazione"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Ottenere una coppia di token"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr ""
|
||||
"Ottenere una coppia di token (aggiornamento e accesso) per l'autenticazione."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Aggiornare una coppia di token"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Aggiorna una coppia di token (refresh e access)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Verifica di un token"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Verifica di un token (aggiornamento o accesso)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Creare un nuovo utente"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Recuperare i dettagli di un utente"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Aggiornare i dettagli di un utente"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Eliminare un utente"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"Reimpostare la password di un utente inviando un'e-mail di reimpostazione "
|
||||
"della password"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Gestire il caricamento dell'avatar per un utente"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Confermare la reimpostazione della password di un utente"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Le password non corrispondono"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Attivare l'account di un utente"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Il link di attivazione non è valido o l'account è già stato attivato."
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr "L'uuid b64-encoded dell'utente che ci ha segnalato il nuovo utente."
|
||||
|
|
@ -74,7 +137,8 @@ msgstr "Numero di telefono malformato: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Formato attributo non valido: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Il link di attivazione non è valido!"
|
||||
|
||||
|
|
@ -86,11 +150,7 @@ msgstr "L'account è già stato attivato..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Qualcosa è andato storto: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Le password non corrispondono"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Il gettone non è valido!"
|
||||
|
||||
|
|
@ -347,3 +407,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Formato del numero di telefono non valido. Il numero deve essere inserito "
|
||||
"nel formato: \"+999999999\". Sono consentite fino a 15 cifre."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "Il token è valido"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "Il token non è valido"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "La password è stata reimpostata con successo!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Avete già attivato l'account..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: ja-JP\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,71 @@ msgstr "追加情報"
|
|||
msgid "authentication"
|
||||
msgstr "認証"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "トークン・ペアの取得"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "認証用のトークンペア(リフレッシュとアクセス)を取得する。"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "トークン・ペアのリフレッシュ"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "トークン・ペアをリフレッシュする(リフレッシュとアクセス)。"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "トークンの検証"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "トークンを確認する(リフレッシュまたはアクセス)。"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "新規ユーザーの作成"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "ユーザーの詳細を取得する"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "ユーザー情報の更新"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "ユーザーを削除する"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr "パスワード再設定メールを送信して、ユーザーのパスワードを再設定する。"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "ユーザーのアバターアップロードを処理する"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "ユーザーのパスワード・リセットを確認する"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "パスワードが一致しない"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "ユーザーアカウントの有効化"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "アクティベーションリンクが無効であるか、アカウントがすでにアクティベーションされています。"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr "新規ユーザーを紹介したユーザーのb64エンコードされたuuid。"
|
||||
|
|
@ -74,7 +134,8 @@ msgstr "不正な電話番号:{phone_number}。"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "無効な属性形式です:{attribute_pair}。"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "アクティベーションリンクが無効です!"
|
||||
|
||||
|
|
@ -86,11 +147,7 @@ msgstr "アカウントはすでに有効になっています..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "何かが間違っていた:{e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "パスワードが一致しない"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "トークンが無効です!"
|
||||
|
||||
|
|
@ -254,9 +311,7 @@ msgstr "こんにちは、%(user_first_name)sです、"
|
|||
msgid ""
|
||||
"we have received a request to reset your password. please reset your "
|
||||
"password by clicking the button below:"
|
||||
msgstr ""
|
||||
"パスワードの再設定依頼が届いております。以下のボタンをクリックして、パスワー"
|
||||
"ドをリセットしてください:"
|
||||
msgstr "パスワードの再設定依頼が届いております。以下のボタンをクリックして、パスワードをリセットしてください:"
|
||||
|
||||
#: vibes_auth/templates/user_reset_password_email.html:84
|
||||
msgid "reset password"
|
||||
|
|
@ -266,9 +321,7 @@ msgstr "パスワードのリセット"
|
|||
msgid ""
|
||||
"if the button above does not work, please copy and paste the following URL "
|
||||
"into your web browser:"
|
||||
msgstr ""
|
||||
"上記のボタンが機能しない場合は、以下のURLをコピーしてウェブブラウザに貼り付け"
|
||||
"てください:"
|
||||
msgstr "上記のボタンが機能しない場合は、以下のURLをコピーしてウェブブラウザに貼り付けてください:"
|
||||
|
||||
#: vibes_auth/templates/user_reset_password_email.html:88
|
||||
msgid "if you did not send this request, please ignore this email."
|
||||
|
|
@ -294,9 +347,7 @@ msgstr "アカウントの有効化"
|
|||
msgid ""
|
||||
"thank you for signing up for %(project_name)s. please activate your account "
|
||||
"by clicking the button below:"
|
||||
msgstr ""
|
||||
"%(project_name)sにご登録いただきありがとうございます。下のボタンをクリックし"
|
||||
"てアカウントを有効にしてください:"
|
||||
msgstr "%(project_name)sにご登録いただきありがとうございます。下のボタンをクリックしてアカウントを有効にしてください:"
|
||||
|
||||
#: vibes_auth/templates/user_verification_email.html:95
|
||||
msgid ""
|
||||
|
|
@ -311,8 +362,7 @@ msgid ""
|
|||
"if the button above does not work, please copy and paste the following URL\n"
|
||||
" into your web browser:"
|
||||
msgstr ""
|
||||
"上記のボタンが機能しない場合は、次のURLをコピーしてウェブブラウザに貼り付けて"
|
||||
"ください。\n"
|
||||
"上記のボタンが機能しない場合は、次のURLをコピーしてウェブブラウザに貼り付けてください。\n"
|
||||
" をウェブブラウザに貼り付けてください:"
|
||||
|
||||
#: vibes_auth/templates/user_verification_email.html:101
|
||||
|
|
@ -343,6 +393,20 @@ msgstr "{config.PROJECT_NAME}。| パスワードのリセット"
|
|||
msgid ""
|
||||
"invalid phone number format. the number must be entered in the format: "
|
||||
"\"+999999999\". up to 15 digits allowed."
|
||||
msgstr ""
|
||||
"電話番号の形式が無効です。電話番号は次の形式で入力してください:"
|
||||
"\"+999999999\".15桁まで入力可能です。"
|
||||
msgstr "電話番号の形式が無効です。電話番号は次の形式で入力してください:\"+999999999\".15桁まで入力可能です。"
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "トークンは有効です"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "トークンが無効"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "パスワードのリセットに成功しました!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "あなたはすでにアカウントを有効にしています..."
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
|
@ -50,6 +50,71 @@ msgstr ""
|
|||
msgid "authentication"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr ""
|
||||
|
|
@ -73,7 +138,8 @@ msgstr ""
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -85,11 +151,7 @@ msgstr ""
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -332,3 +394,19 @@ msgid ""
|
|||
"invalid phone number format. the number must be entered in the format: "
|
||||
"\"+999999999\". up to 15 digits allowed."
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr ""
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr ""
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: nl-NL\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,73 @@ msgstr "Extra info"
|
|||
msgid "authentication"
|
||||
msgstr "Authenticatie"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Een tokenpaar verkrijgen"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "Verkrijg een tokenpaar (refresh en access) voor verificatie."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Een tokenpaar vernieuwen"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Een tokenpaar verversen (refresh en access)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Een token verifiëren"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Een token verifiëren (verversen of toegang)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Een nieuwe gebruiker maken"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "De gegevens van een gebruiker ophalen"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "De gegevens van een gebruiker bijwerken"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Een gebruiker verwijderen"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"Het wachtwoord van een gebruiker opnieuw instellen door een e-mail met het "
|
||||
"wachtwoord opnieuw in te stellen"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Avatar uploaden voor een gebruiker afhandelen"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Bevestig het resetten van het wachtwoord van een gebruiker"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Wachtwoorden komen niet overeen"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Een gebruikersaccount activeren"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Activeringslink is ongeldig of account is al geactiveerd"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr ""
|
||||
|
|
@ -76,7 +138,8 @@ msgstr "Misvormd telefoonnummer: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Ongeldig attribuutformaat: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Activeringslink is ongeldig!"
|
||||
|
||||
|
|
@ -88,11 +151,7 @@ msgstr "Account is al geactiveerd..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Er ging iets mis: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Wachtwoorden komen niet overeen"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Token is invalid!"
|
||||
|
||||
|
|
@ -257,8 +316,8 @@ msgid ""
|
|||
"we have received a request to reset your password. please reset your "
|
||||
"password by clicking the button below:"
|
||||
msgstr ""
|
||||
"We hebben een verzoek ontvangen om je wachtwoord opnieuw in te stellen. Klik "
|
||||
"op de knop hieronder om je wachtwoord opnieuw in te stellen:"
|
||||
"We hebben een verzoek ontvangen om je wachtwoord opnieuw in te stellen. Klik"
|
||||
" op de knop hieronder om je wachtwoord opnieuw in te stellen:"
|
||||
|
||||
#: vibes_auth/templates/user_reset_password_email.html:84
|
||||
msgid "reset password"
|
||||
|
|
@ -297,8 +356,8 @@ msgid ""
|
|||
"thank you for signing up for %(project_name)s. please activate your account "
|
||||
"by clicking the button below:"
|
||||
msgstr ""
|
||||
"Bedankt voor het aanmelden bij %(project_name)s. Activeer je account door op "
|
||||
"de onderstaande knop te klikken:"
|
||||
"Bedankt voor het aanmelden bij %(project_name)s. Activeer je account door op"
|
||||
" de onderstaande knop te klikken:"
|
||||
|
||||
#: vibes_auth/templates/user_verification_email.html:95
|
||||
msgid ""
|
||||
|
|
@ -347,3 +406,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Ongeldig formaat telefoonnummer. Het nummer moet worden ingevoerd in de "
|
||||
"indeling: \"+999999999\". Maximaal 15 cijfers toegestaan."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "The token is valid"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "Het token is ongeldig"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "Wachtwoord is succesvol gereset!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Je hebt de account al geactiveerd..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
|
|
@ -46,6 +46,74 @@ msgstr "Dodatkowe informacje"
|
|||
msgid "authentication"
|
||||
msgstr "Uwierzytelnianie"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Uzyskanie pary tokenów"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr ""
|
||||
"Uzyskanie pary tokenów (odświeżenie i dostęp) w celu uwierzytelnienia."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Odśwież parę tokenów"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Odświeżenie pary tokenów (odświeżenie i dostęp)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Weryfikacja tokena"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Weryfikacja tokena (odświeżenie lub dostęp)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Tworzenie nowego użytkownika"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Pobieranie danych użytkownika"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Aktualizacja danych użytkownika"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Usuwanie użytkownika"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"Zresetowanie hasła użytkownika poprzez wysłanie wiadomości e-mail "
|
||||
"resetującej hasło."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Obsługa przesyłania awatara dla użytkownika"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Potwierdzenie zresetowania hasła użytkownika"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Hasła nie są zgodne"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Aktywacja konta użytkownika"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Link aktywacyjny jest nieprawidłowy lub konto zostało już aktywowane."
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr ""
|
||||
|
|
@ -71,7 +139,8 @@ msgstr "Zniekształcony numer telefonu: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Nieprawidłowy format atrybutu: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Link aktywacyjny jest nieprawidłowy!"
|
||||
|
||||
|
|
@ -83,11 +152,7 @@ msgstr "Konto zostało już aktywowane..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Coś poszło nie tak: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Hasła nie są zgodne"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Token jest nieprawidłowy!"
|
||||
|
||||
|
|
@ -340,5 +405,21 @@ msgid ""
|
|||
"invalid phone number format. the number must be entered in the format: "
|
||||
"\"+999999999\". up to 15 digits allowed."
|
||||
msgstr ""
|
||||
"Nieprawidłowy format numeru telefonu. Numer musi być wprowadzony w formacie: "
|
||||
"\"+999999999\". Dozwolone do 15 cyfr."
|
||||
"Nieprawidłowy format numeru telefonu. Numer musi być wprowadzony w formacie:"
|
||||
" \"+999999999\". Dozwolone do 15 cyfr."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "Token jest ważny"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "Token jest nieprawidłowy"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "Hasło zostało pomyślnie zresetowane!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Konto zostało już aktywowane..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: pt-BR\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,72 @@ msgstr "Informações adicionais"
|
|||
msgid "authentication"
|
||||
msgstr "Autenticação"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Obter um par de tokens"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "Obter um par de tokens (atualização e acesso) para autenticação."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Atualizar um par de tokens"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Atualizar um par de tokens (atualizar e acessar)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Verificar um token"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Verificar um token (atualização ou acesso)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Criar um novo usuário"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Recuperar os detalhes de um usuário"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Atualizar os detalhes de um usuário"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Excluir um usuário"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"Redefinir a senha de um usuário enviando um e-mail de redefinição de senha"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Manipular o upload do avatar de um usuário"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Confirmar a redefinição de senha de um usuário"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "As senhas não correspondem"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Ativar a conta de um usuário"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "O link de ativação é inválido ou a conta já está ativada"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr "O uuid codificado em b64 do usuário que nos indicou o novo usuário."
|
||||
|
|
@ -74,7 +135,8 @@ msgstr "Número de telefone malformado: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Formato de atributo inválido: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "O link de ativação é inválido!"
|
||||
|
||||
|
|
@ -86,11 +148,7 @@ msgstr "A conta já foi ativada..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Algo deu errado: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "As senhas não correspondem"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "O token é inválido!"
|
||||
|
||||
|
|
@ -267,8 +325,8 @@ msgid ""
|
|||
"if the button above does not work, please copy and paste the following URL "
|
||||
"into your web browser:"
|
||||
msgstr ""
|
||||
"Se o botão acima não funcionar, copie e cole o seguinte URL em seu navegador "
|
||||
"da Web:"
|
||||
"Se o botão acima não funcionar, copie e cole o seguinte URL em seu navegador"
|
||||
" da Web:"
|
||||
|
||||
#: vibes_auth/templates/user_reset_password_email.html:88
|
||||
msgid "if you did not send this request, please ignore this email."
|
||||
|
|
@ -345,3 +403,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Formato de número telefônico inválido. O número deve ser inserido no "
|
||||
"formato: \"+999999999\". São permitidos até 15 dígitos."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "O token é válido"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "O token é inválido"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "A senha foi redefinida com sucesso!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Você já ativou a conta..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: ro-RO\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,74 @@ msgstr "Informații suplimentare"
|
|||
msgid "authentication"
|
||||
msgstr "Autentificare"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Obțineți o pereche de jetoane"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr ""
|
||||
"Obțineți o pereche de jetoane (refresh și access) pentru autentificare."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Reîmprospătați o pereche de jetoane"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Actualizați o pereche de jetoane (actualizare și acces)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Verificarea unui jeton"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Verificarea unui jeton (reîmprospătare sau acces)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Creați un utilizator nou"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Recuperarea detaliilor unui utilizator"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Actualizarea detaliilor unui utilizator"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Ștergeți un utilizator"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"Resetați parola unui utilizator prin trimiterea unui e-mail de resetare a "
|
||||
"parolei"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Gestionarea încărcării avatarului pentru un utilizator"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Confirmați resetarea parolei unui utilizator"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Parolele nu se potrivesc"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Activați contul unui utilizator"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Linkul de activare este invalid sau contul este deja activat"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr ""
|
||||
|
|
@ -75,7 +138,8 @@ msgstr "Număr de telefon malformat: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Format de atribut invalid: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Linkul de activare este invalid!"
|
||||
|
||||
|
|
@ -87,11 +151,7 @@ msgstr "Contul a fost deja activat..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Ceva nu a mers bine: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Parolele nu se potrivesc"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Token-ul nu este valabil!"
|
||||
|
||||
|
|
@ -312,8 +372,7 @@ msgid ""
|
|||
"if the button above does not work, please copy and paste the following URL\n"
|
||||
" into your web browser:"
|
||||
msgstr ""
|
||||
"Dacă butonul de mai sus nu funcționează, vă rugăm să copiați și să lipiți "
|
||||
"următoarea adresă URL\n"
|
||||
"Dacă butonul de mai sus nu funcționează, vă rugăm să copiați și să lipiți următoarea adresă URL\n"
|
||||
" în browserul dvs. web:"
|
||||
|
||||
#: vibes_auth/templates/user_verification_email.html:101
|
||||
|
|
@ -347,3 +406,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Format invalid al numărului de telefon. Numărul trebuie să fie introdus în "
|
||||
"formatul: \"+999999999\". Sunt permise până la 15 cifre."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "Jetonul este valid"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "Jetonul nu este valabil"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "Parola a fost resetată cu succes!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Ați activat deja contul..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: ru-RU\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,73 @@ msgstr "Дополнительная информация"
|
|||
msgid "authentication"
|
||||
msgstr "Аутентификация"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "Получение пары маркеров"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "Получите пару маркеров (refresh и access) для аутентификации."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "Обновить пару маркеров"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "Обновление пары маркеров (обновление и доступ)."
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "Проверка маркера"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "Проверка маркера (обновление или доступ)."
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "Создайте нового пользователя"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "Получение информации о пользователе"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "Обновление данных пользователя"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "Удалить пользователя"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr ""
|
||||
"Сброс пароля пользователя путем отправки электронного сообщения о сбросе "
|
||||
"пароля"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "Обработка загрузки аватара для пользователя"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "Подтверждение сброса пароля пользователя"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "Пароли не совпадают"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "Активация учетной записи пользователя"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "Ссылка на активацию недействительна или аккаунт уже активирован"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr ""
|
||||
|
|
@ -76,7 +138,8 @@ msgstr "Некорректный номер телефона: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "Недопустимый формат атрибута: {attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "Ссылка на активацию недействительна!"
|
||||
|
||||
|
|
@ -88,11 +151,7 @@ msgstr "Аккаунт уже активирован..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "Что-то пошло не так: {e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "Пароли не совпадают"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "Токен недействителен!"
|
||||
|
||||
|
|
@ -314,8 +373,7 @@ msgid ""
|
|||
"if the button above does not work, please copy and paste the following URL\n"
|
||||
" into your web browser:"
|
||||
msgstr ""
|
||||
"Если кнопка выше не работает, пожалуйста, скопируйте и вставьте следующий "
|
||||
"URL-адрес\n"
|
||||
"Если кнопка выше не работает, пожалуйста, скопируйте и вставьте следующий URL-адрес\n"
|
||||
" в свой веб-браузер:"
|
||||
|
||||
#: vibes_auth/templates/user_verification_email.html:101
|
||||
|
|
@ -349,3 +407,19 @@ msgid ""
|
|||
msgstr ""
|
||||
"Неверный формат телефонного номера. Номер должен быть введен в формате: "
|
||||
"\"+999999999\". Допускается до 15 цифр."
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "Токен действителен"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "Токен недействителен"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "Пароль был успешно сброшен!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "Вы уже активировали учетную запись..."
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,18 +1,13 @@
|
|||
# eVibes Translations.
|
||||
# Copyright (C) 2025 Egor "fureunoir" Gorbunov
|
||||
# This file is distributed under the same license as the eVibes package.
|
||||
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-05-08 14:48+0100\n"
|
||||
"POT-Creation-Date: 2025-05-13 20:44+0100\n"
|
||||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||||
"Language: BRITISH ENGLISH\n"
|
||||
"Language: zh-hans\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
|
@ -51,6 +46,71 @@ msgstr "其他信息"
|
|||
msgid "authentication"
|
||||
msgstr "认证"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:15
|
||||
msgid "obtain a token pair"
|
||||
msgstr "获取令牌对"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:16
|
||||
msgid "obtain a token pair (refresh and access) for authentication."
|
||||
msgstr "获取用于身份验证的令牌对(刷新和访问)。"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:35
|
||||
msgid "refresh a token pair"
|
||||
msgstr "刷新令牌对"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:36
|
||||
msgid "refresh a token pair (refresh and access)."
|
||||
msgstr "刷新令牌对(刷新和访问)。"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:55
|
||||
msgid "verify a token"
|
||||
msgstr "验证令牌"
|
||||
|
||||
#: vibes_auth/docs/drf/views.py:56
|
||||
msgid "Verify a token (refresh or access)."
|
||||
msgstr "验证令牌(刷新或访问)。"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:15
|
||||
msgid "create a new user"
|
||||
msgstr "创建新用户"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:19
|
||||
msgid "retrieve a user's details"
|
||||
msgstr "读取用户详细信息"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:23
|
||||
msgid "update a user's details"
|
||||
msgstr "更新用户信息"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:28
|
||||
msgid "delete a user"
|
||||
msgstr "删除用户"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:32
|
||||
msgid "reset a user's password by sending a reset password email"
|
||||
msgstr "通过发送重置密码电子邮件重置用户密码"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:40
|
||||
msgid "handle avatar upload for a user"
|
||||
msgstr "处理用户的头像上传"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:49
|
||||
msgid "confirm a user's password reset"
|
||||
msgstr "确认用户密码重置"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:53 vibes_auth/graphene/mutations.py:305
|
||||
#: vibes_auth/viewsets.py:72
|
||||
msgid "passwords do not match"
|
||||
msgstr "密码不匹配"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:58
|
||||
msgid "activate a user's account"
|
||||
msgstr "激活用户帐户"
|
||||
|
||||
#: vibes_auth/docs/drf/viewsets.py:62
|
||||
msgid "activation link is invalid or account already activated"
|
||||
msgstr "激活链接无效或账户已激活"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:40
|
||||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||||
msgstr "将新用户推荐给我们的用户的 b64-encoded uuid。"
|
||||
|
|
@ -74,7 +134,8 @@ msgstr "畸形电话号码: {phone_number}"
|
|||
msgid "Invalid attribute format: {attribute_pair}"
|
||||
msgstr "属性格式无效:{attribute_pair}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:261
|
||||
#: vibes_auth/graphene/mutations.py:261 vibes_auth/viewsets.py:107
|
||||
#: vibes_auth/viewsets.py:123
|
||||
msgid "activation link is invalid!"
|
||||
msgstr "激活链接无效!"
|
||||
|
||||
|
|
@ -86,11 +147,7 @@ msgstr "帐户已激活..."
|
|||
msgid "something went wrong: {e!s}"
|
||||
msgstr "出了问题:{e!s}"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:305
|
||||
msgid "passwords do not match"
|
||||
msgstr "密码不匹配"
|
||||
|
||||
#: vibes_auth/graphene/mutations.py:312
|
||||
#: vibes_auth/graphene/mutations.py:312 vibes_auth/viewsets.py:81
|
||||
msgid "token is invalid!"
|
||||
msgstr "令牌无效!"
|
||||
|
||||
|
|
@ -336,5 +393,20 @@ msgstr "{config.PROJECT_NAME} 重置密码| 重置密码"
|
|||
msgid ""
|
||||
"invalid phone number format. the number must be entered in the format: "
|
||||
"\"+999999999\". up to 15 digits allowed."
|
||||
msgstr ""
|
||||
"电话号码格式无效。电话号码必须按格式输入:\"+999999999\".最多允许 15 位数字。"
|
||||
msgstr "电话号码格式无效。电话号码必须按格式输入:\"+999999999\".最多允许 15 位数字。"
|
||||
|
||||
#: vibes_auth/views.py:168
|
||||
msgid "the token is valid"
|
||||
msgstr "令牌有效"
|
||||
|
||||
#: vibes_auth/views.py:170
|
||||
msgid "the token is invalid"
|
||||
msgstr "令牌无效"
|
||||
|
||||
#: vibes_auth/viewsets.py:85
|
||||
msgid "password reset successfully"
|
||||
msgstr "密码已重置成功!"
|
||||
|
||||
#: vibes_auth/viewsets.py:112
|
||||
msgid "account already activated!"
|
||||
msgstr "您已经激活了账户..."
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import logging
|
||||
|
||||
from django.utils.decorators import method_decorator
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django_ratelimit.decorators import ratelimit
|
||||
from drf_spectacular.utils import (
|
||||
OpenApiExample,
|
||||
|
|
@ -67,7 +68,6 @@ class TokenObtainPairView(TokenViewBase):
|
|||
)
|
||||
@method_decorator(ratelimit(key="ip", rate="5/h"))
|
||||
def post(self, request, *args, **kwargs):
|
||||
logger.debug("Got to super post")
|
||||
return super().post(request, *args, **kwargs)
|
||||
|
||||
|
||||
|
|
@ -128,8 +128,7 @@ class TokenVerifyView(TokenViewBase):
|
|||
200: inline_serializer(
|
||||
name="TokenVerifyResponse",
|
||||
fields={
|
||||
"refresh": serializers.CharField(),
|
||||
"access": serializers.CharField(),
|
||||
"token": serializers.CharField(choices=["valid", "no valid"]),
|
||||
"user": UserSerializer(),
|
||||
},
|
||||
),
|
||||
|
|
@ -166,6 +165,6 @@ class TokenVerifyView(TokenViewBase):
|
|||
serializer = self.get_serializer(data=request.data)
|
||||
serializer.is_valid(raise_exception=True)
|
||||
user_data = serializer.validated_data.pop("user", None)
|
||||
return Response({"token": "The token is valid", "user": user_data})
|
||||
return Response({"token": _("the token is valid"), "user": user_data})
|
||||
except TokenError:
|
||||
return Response({"detail": "The token is invalid"}, status=status.HTTP_400_BAD_REQUEST)
|
||||
return Response({"detail": _("the token is invalid")}, status=status.HTTP_400_BAD_REQUEST)
|
||||
|
|
|
|||
|
|
@ -1,11 +1,13 @@
|
|||
import logging
|
||||
from contextlib import suppress
|
||||
from secrets import compare_digest
|
||||
|
||||
from django.contrib.auth.tokens import PasswordResetTokenGenerator
|
||||
from django.utils.decorators import method_decorator
|
||||
from django.utils.http import urlsafe_base64_decode
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django_ratelimit.decorators import ratelimit
|
||||
from drf_spectacular.utils import extend_schema
|
||||
from drf_spectacular.utils import extend_schema_view
|
||||
from rest_framework import mixins, status
|
||||
from rest_framework.decorators import action
|
||||
from rest_framework.permissions import AllowAny, IsAuthenticated
|
||||
|
|
@ -13,11 +15,11 @@ from rest_framework.response import Response
|
|||
from rest_framework.viewsets import GenericViewSet
|
||||
from rest_framework_simplejwt.tokens import RefreshToken
|
||||
|
||||
from evibes.settings import DEBUG
|
||||
from vibes_auth.docs.drf.viewsets import USER_SCHEMA
|
||||
from vibes_auth.models import User
|
||||
from vibes_auth.serializers import (
|
||||
ActivateEmailSerializer,
|
||||
ConfirmPasswordResetSerializer,
|
||||
ResetPasswordSerializer,
|
||||
UserSerializer,
|
||||
)
|
||||
from vibes_auth.utils.emailing import send_reset_password_email_task
|
||||
|
|
@ -25,6 +27,7 @@ from vibes_auth.utils.emailing import send_reset_password_email_task
|
|||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@extend_schema_view(**USER_SCHEMA)
|
||||
class UserViewSet(
|
||||
mixins.CreateModelMixin,
|
||||
mixins.RetrieveModelMixin,
|
||||
|
|
@ -36,36 +39,18 @@ class UserViewSet(
|
|||
queryset = User.objects.filter(is_active=True)
|
||||
permission_classes = [AllowAny]
|
||||
|
||||
@extend_schema(
|
||||
description="Reset a user's password by sending a reset password email.",
|
||||
request=ResetPasswordSerializer(),
|
||||
responses={200: {}, 400: {"description": "Email does not exist"}},
|
||||
)
|
||||
@action(detail=False, methods=["post"])
|
||||
@method_decorator(ratelimit(key="ip", rate="2/h"))
|
||||
@method_decorator(ratelimit(key="ip", rate="2/h" if not DEBUG else "888/h"))
|
||||
def reset_password(self, request):
|
||||
try:
|
||||
user = None
|
||||
with suppress(User.DoesNotExist):
|
||||
user = User.objects.get(email=request.data.get("email"))
|
||||
except User.DoesNotExist:
|
||||
return Response(
|
||||
status=status.HTTP_400_BAD_REQUEST,
|
||||
data={"error": "Email does not exist"},
|
||||
)
|
||||
|
||||
send_reset_password_email_task.delay(user_pk=user.uuid)
|
||||
if user:
|
||||
send_reset_password_email_task.delay(user_pk=user.uuid)
|
||||
return Response(status=status.HTTP_200_OK)
|
||||
|
||||
@extend_schema(
|
||||
description="Handle avatar upload for a user.",
|
||||
methods=["PUT"],
|
||||
responses={
|
||||
200: UserSerializer(),
|
||||
400: {"description": "Invalid Request"},
|
||||
403: {"description": "Bad credentials"},
|
||||
},
|
||||
)
|
||||
@action(detail=True, methods=["put"], permission_classes=[IsAuthenticated])
|
||||
@method_decorator(ratelimit(key="ip", rate="2/h"))
|
||||
@method_decorator(ratelimit(key="ip", rate="2/h" if not DEBUG else "888/h"))
|
||||
def upload_avatar(self, request):
|
||||
user = self.get_object()
|
||||
if request.user != user:
|
||||
|
|
@ -76,23 +61,15 @@ class UserViewSet(
|
|||
return Response(status=status.HTTP_200_OK, data=self.serializer_class(user).data)
|
||||
return Response(status=status.HTTP_400_BAD_REQUEST)
|
||||
|
||||
@extend_schema(
|
||||
description="Confirm a password reset for a user.",
|
||||
request=ConfirmPasswordResetSerializer(),
|
||||
responses={
|
||||
200: {"description": "Password reset successfully"},
|
||||
400: {"description": "Invalid uid!"},
|
||||
},
|
||||
)
|
||||
@action(detail=False, methods=["post"])
|
||||
@method_decorator(ratelimit(key="ip", rate="2/h"))
|
||||
@method_decorator(ratelimit(key="ip", rate="2/h" if not DEBUG else "888/h"))
|
||||
def confirm_password_reset(self):
|
||||
try:
|
||||
data = ConfirmPasswordResetSerializer(self.request.data).data
|
||||
|
||||
if not compare_digest(data.get("password"), data.get("confirm_password")):
|
||||
return Response(
|
||||
{"error": "Passwords do not match"},
|
||||
{"error": _("passwords do not match")},
|
||||
status=status.HTTP_400_BAD_REQUEST,
|
||||
)
|
||||
|
||||
|
|
@ -101,53 +78,38 @@ class UserViewSet(
|
|||
|
||||
password_reset_token = PasswordResetTokenGenerator()
|
||||
if not password_reset_token.check_token(user, data.get("token")):
|
||||
return Response({"error": "Token is invalid!"}, status=status.HTTP_400_BAD_REQUEST)
|
||||
return Response({"error": _("token is invalid!")}, status=status.HTTP_400_BAD_REQUEST)
|
||||
|
||||
user.set_password(data.get("password"))
|
||||
user.save()
|
||||
return Response({"message": "Password reset successfully"}, status=status.HTTP_200_OK)
|
||||
return Response({"message": _("password reset successfully")}, status=status.HTTP_200_OK)
|
||||
|
||||
except (TypeError, ValueError, OverflowError, User.DoesNotExist) as e:
|
||||
logger.error(str(e))
|
||||
return Response({"error": "Invalid uuid!"}, status=status.HTTP_400_BAD_REQUEST)
|
||||
return Response({"error": str(e)}, status=status.HTTP_400_BAD_REQUEST)
|
||||
|
||||
@extend_schema(
|
||||
request=UserSerializer,
|
||||
description="Create a new user. An activation email will be sent after creation.",
|
||||
responses={201: UserSerializer()},
|
||||
)
|
||||
@method_decorator(ratelimit(key="ip", rate="3/h"))
|
||||
@method_decorator(ratelimit(key="ip", rate="3/h" if not DEBUG else "888/h"))
|
||||
def create(self, request, *args, **kwargs):
|
||||
serializer = self.get_serializer(data=request.data)
|
||||
serializer.is_valid(raise_exception=True)
|
||||
user = serializer.save()
|
||||
user.save()
|
||||
# send_email_confirmation.delay(user.pk)
|
||||
headers = self.get_success_headers(serializer.data)
|
||||
return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers)
|
||||
|
||||
@extend_schema(
|
||||
description="Activate a user's account.",
|
||||
responses={
|
||||
200: UserSerializer(),
|
||||
400: {"description": "Activation link is invalid!"},
|
||||
},
|
||||
request=ActivateEmailSerializer(),
|
||||
)
|
||||
@action(detail=False, methods=["post"])
|
||||
@method_decorator(ratelimit(key="ip", rate="2/h"))
|
||||
@method_decorator(ratelimit(key="ip", rate="2/h" if not DEBUG else "888/h"))
|
||||
def activate(self, request):
|
||||
try:
|
||||
uuid = urlsafe_base64_decode(request.data.get("uidb64")).decode()
|
||||
user = User.objects.get(pk=uuid)
|
||||
if not user.check_token(request.data.get("token")):
|
||||
return Response(
|
||||
{"error": "Activation link is invalid!"},
|
||||
{"error": _("activation link is invalid!")},
|
||||
status=status.HTTP_400_BAD_REQUEST,
|
||||
)
|
||||
if user.is_active:
|
||||
return Response(
|
||||
{"error": "Account already activated!"},
|
||||
{"error": _("account already activated!")},
|
||||
status=status.HTTP_400_BAD_REQUEST,
|
||||
)
|
||||
user.is_active = True
|
||||
|
|
@ -158,7 +120,7 @@ class UserViewSet(
|
|||
logger.error(str(e))
|
||||
if user is None:
|
||||
return Response(
|
||||
{"error": "Activation link is invalid!"},
|
||||
{"error": _("activation link is invalid!")},
|
||||
status=status.HTTP_400_BAD_REQUEST,
|
||||
)
|
||||
else:
|
||||
|
|
@ -168,16 +130,11 @@ class UserViewSet(
|
|||
response_data["access"] = str(tokens.access_token)
|
||||
return Response(response_data, status=status.HTTP_200_OK)
|
||||
|
||||
@extend_schema(description="Retrieve a user's details.")
|
||||
def retrieve(self, request, pk=None, *args, **kwargs):
|
||||
instance = self.get_object()
|
||||
serializer = self.get_serializer(instance)
|
||||
return Response(serializer.data)
|
||||
|
||||
@extend_schema(
|
||||
description="Update a user's details.",
|
||||
request=UserSerializer,
|
||||
)
|
||||
def update(self, request, pk=None, *args, **kwargs):
|
||||
return Response(
|
||||
self.get_serializer(self.get_object()).update(instance=self.get_object(), validated_data=request.data).data
|
||||
|
|
|
|||
Loading…
Reference in a new issue