diff --git a/ecommerce/conf/locale/af_ZA/LC_MESSAGES/django.mo b/ecommerce/conf/locale/af_ZA/LC_MESSAGES/django.mo index 3adfbec64dd..49af55cfcd2 100644 Binary files a/ecommerce/conf/locale/af_ZA/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/af_ZA/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/af_ZA/LC_MESSAGES/django.po b/ecommerce/conf/locale/af_ZA/LC_MESSAGES/django.po index a89b08f9b33..d55373aa24d 100644 --- a/ecommerce/conf/locale/af_ZA/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/af_ZA/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/open-edx/edx-platform/language/af_ZA/)\n" +"Language-Team: Afrikaans (South Africa) (http://app.transifex.com/open-edx/edx-platform/language/af_ZA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/af_ZA/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/af_ZA/LC_MESSAGES/djangojs.mo index 2d637d65d44..d5c6363073d 100644 Binary files a/ecommerce/conf/locale/af_ZA/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/af_ZA/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/af_ZA/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/af_ZA/LC_MESSAGES/djangojs.po index f1f1bc37796..e7d4228cb3a 100644 --- a/ecommerce/conf/locale/af_ZA/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/af_ZA/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/open-edx/edx-platform/language/af_ZA/)\n" +"Language-Team: Afrikaans (South Africa) (http://app.transifex.com/open-edx/edx-platform/language/af_ZA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/am_ET/LC_MESSAGES/django.mo b/ecommerce/conf/locale/am_ET/LC_MESSAGES/django.mo index 9526da56e01..387d95a233b 100644 Binary files a/ecommerce/conf/locale/am_ET/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/am_ET/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/am_ET/LC_MESSAGES/django.po b/ecommerce/conf/locale/am_ET/LC_MESSAGES/django.po index 7bc261ee41f..0d405d9cbb6 100644 --- a/ecommerce/conf/locale/am_ET/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/am_ET/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Amharic (Ethiopia) (http://www.transifex.com/open-edx/edx-platform/language/am_ET/)\n" +"Language-Team: Amharic (Ethiopia) (http://app.transifex.com/open-edx/edx-platform/language/am_ET/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/am_ET/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/am_ET/LC_MESSAGES/djangojs.mo index b286477bef8..21218e4615f 100644 Binary files a/ecommerce/conf/locale/am_ET/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/am_ET/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/am_ET/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/am_ET/LC_MESSAGES/djangojs.po index 846223e3c7a..b8944ad0534 100644 --- a/ecommerce/conf/locale/am_ET/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/am_ET/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Amharic (Ethiopia) (http://www.transifex.com/open-edx/edx-platform/language/am_ET/)\n" +"Language-Team: Amharic (Ethiopia) (http://app.transifex.com/open-edx/edx-platform/language/am_ET/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ar/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ar/LC_MESSAGES/django.mo index 7362d19b1f0..9377cd967c4 100644 Binary files a/ecommerce/conf/locale/ar/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ar/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ar/LC_MESSAGES/django.po b/ecommerce/conf/locale/ar/LC_MESSAGES/django.po index 76119277846..0de891ea787 100644 --- a/ecommerce/conf/locale/ar/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ar/LC_MESSAGES/django.po @@ -9,6 +9,7 @@ # Translators: # Translators: # Translators: +# Abderraouf Mehdi Bouhali , 2022 # Ahmed Jazzar , 2015 # Ahmed Jazzar , 2016 # Anthony Mangano , 2017 @@ -20,7 +21,7 @@ # Nabeel El-Dughailib , 2015 # NELC Open edX Translation , 2020 # Omar Al-Ithawi , 2016 -# Phil Shiu , 2022 +# Phillip Shiu , 2022 # Rama Alshebel, 2021 # Roaa Nader , 2021 # Sahbi BG , 2017 @@ -31,10 +32,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Phil Shiu , 2022\n" -"Language-Team: Arabic (http://www.transifex.com/open-edx/edx-platform/language/ar/)\n" +"Last-Translator: Abderraouf Mehdi Bouhali , 2022\n" +"Language-Team: Arabic (http://app.transifex.com/open-edx/edx-platform/language/ar/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -63,332 +64,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "تم تعطيل إدارة المستخدم بسبب الحمل على قاعدة البيانات. يمكن استعادة هذه الوظيفة من خلال تفعيل مفتاح Waffle {switch_name}. كن حذرا عند إعادة تنشيط هذا المفتاح!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "رابط قاعدة نظام إدارة التعلّم ’LMS‘ للموقع الخاص/الموقع المخصّص" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "رابط الجذر لموقع نظام إدارة التعلّم هذا (مثال https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "مسار سمة الموقع المخصّصة" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "معالجات الدفعات" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "قائمة، مفصولة بفواصل، باسماء المعالجات: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "معالج الدفع من جانب العميل" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "المعالج الذي سيستخدم لعمليات الدفع من جانب العميل" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "إعدادات OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "نص JSON يحتوي على إعدادات مكان خلفية OAuth" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "مفتاح القسم" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "كتابة القسم/مفتاح API." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "من البريد الإلكتروني" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "العنوان الذي أُرسلت منه رسائل البريد الإلكتروني." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "تمكين رموز التسجيل" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "تمكين إنشاء رموز التسجيل." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "رسالة بريد إلكتروني لدعم عملية الدفع" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "البريد الإلكتروني لجهة الاتصال لمشكلات دعم عملية الدفع." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "عنوان url لدعم عملية الدفع" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "عنوان URL للمشاكل في دعم عملية الدفع." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "اسم ملف تعريف ارتباط UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "بيانات تخزين اسم ملف تعريف ارتباط UTM" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "اسم ملف تعريف ارتباط UTM التابع" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "بيانات تخزين اسم ملف تعريف الارتباط التابع" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "إرسال إشعار بريد إلكتروني باسترداد المبلغ" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "تمكين التحقق من SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "تمكين التحقق من SDN عند الدفع." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "[Deprecated] رابط واجهة برمجة التطبيقات للأفراد المحددين بشكل خاص لدى وزارة الخزانة الأمريكية" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "[Deprecated] مفتاح واجهة برمجة التطبيقات للأفراد المحددين بشكل خاص لدى وزارة الخزانة الأمريكية" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "قوائم الأفراد المحددين بشكل خاص \"SDN\"" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "قائمة مقسمة باستخدام فواصل تضم قوائم مكتب مراقبة الأصول الأجنبية لدى وزارة الخزانة للتحقق مقارنة بها." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "يجب تنشيط الحساب" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "يجب على المستخدمين تنشيط حسابهم قبل السماح لهم بصرف قسيمة الشراء." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "رابط مصدر المعلومات المحسّن" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "سيتم تحميل هذا النص في كل صفحة." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "المجال الأساسي لملف تعريف الارتباط" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "المجال الأساسي الذي يُستعمل لمشاركة ملفات تعريف الارتباط في جميع الخدمات." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "تمكين فحص الحظر" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "تمكين التحقق من الحظر عند الدفع." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "رابط واجهة برمجة الاستكشاف" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "تمكين Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "تمكين عرض البرنامج الجزئي" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "تمكين تطبيق عروض البرنامج إلى المساقات الغير المسجلة أو التي لم يتم التحقق منها" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "مفتاح شفرة مدخل الصفحة " -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "التحقق من رمز الشفرة لمدخل الصفحة" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "تمكين الواجهة المصغرة لصفحة السلّة" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "استخدم الواجهة الأمامية المصغرة لصفحة السلّة عوضًا عن قالب الخادم الجانبي." -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "رابط الدفع الدقيق للواجهة الأمامية" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "رابط الواجهة المصغرة للدفع (تستخدم عند ضبط الواجهة المصغرة لصفحة السلة)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "الاسم الأخير" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "الاسم الكامل" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "معرّف مستخدم نظام إدارة التعلم" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "الاسم" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "المعرّف المميز للمستخدم للعملاء المجموعات" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "معرف فريد عالمي لعميل مؤسسة من خدمة المؤسسات." -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "القسيمة غير موجودة." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "رمز القسيمة غير صالح إلى الآن." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "انتهت صلاحية رمز القسيمة." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "المنتج [{product}] غير متوفّر للشراء." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "رمز القسيمة لم يعد متاحًا." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "رمز القسيمة غير صحيح" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "القيمة غير سارية على سلّتك الحالية." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "مرحباً بك في edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "يرجى اختيار مساق من المساقات التي اختارتها مؤسستك لبدء الدراسة." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "الرمز غير متوفر." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "وحدة إدارة المخزون غير متوفرة." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "المنتج غير موجود." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "أنت غير مؤهل لاستخدام هذه القسيمة." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "تعذر إيجاد عميل مؤسسة مطابق لهذه القسيمة." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "هذه القسيمة غير صالحة لشراء برنامج. حاول استخدام هذا على مساق واحد في البرنامج. عند الحاجة إلى المساعدة اتصل بدعم edX." -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "تم توفير إشارة غير صالحة للموافقة على مشاركة البيانات." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "لقد اشتريت من قبل مقعدا في {course}." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "تم تطبيق خصم، مهدى من {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "رمز القسيمة غير صالح لهذا المساق. جرب دورة مختلفة." -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "الموقع" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "آخر تاريخ/توقيت يمكن تقديم توثيق لهذا المنتج فيه." @@ -398,43 +399,43 @@ msgstr "آخر تاريخ/توقيت يمكن تقديم توثيق لهذا ا msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "فشلت عملية نشر البيانات التجارية للمساق {course_id} إلى نظام إدارة التعلّم ’LMS‘" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "مستمع" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "نقاط" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "فخري" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "مهني" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "موثق" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "تعليم تنفيذي" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -496,150 +497,160 @@ msgid "" "questions." msgstr "هذا الرمز غير صالح مع بريدك الإلكتروني. يرجى تسجيل الدخول باستخدام البريد الإلكتروني الصحيح المخصص للرمز أو الاتصال بمدير التعلم لديك للإجابة على مزيد من الأسئلة." -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "المعرّف المميز للمستخدم للعملاء المجموعات" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "دليل المعرّف المميز للمستخدم للعملاء المجموعات" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "نوع الخصم" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "قيمة الخصم" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "نوع خصم العقد" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "خصم العقد" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "مبلغ فاتورة مسبقة الدفع" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "معرف فرصة فريق المبيعات" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "عناوين البريد الإلكترونية" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "رسائل البريد الإلكتروني المفصولة بفاصلة والتي ستتلقى تنبيهات حول استخدام العرض" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "مدى تكرار رسائل البريد الإلكتروني لاستخدام العرض" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "الحد الأعلى لعدد مرات الالتحاق التي يمكن لها الاستفادة من هذا العرض." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "الحد الأعلى للمبلغ بالدولار الأمريكي الذي يمكن استرداده بواسطة هذا العرض." -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "الحد الأدنى لعدد مرات الالتحاق التي يمكن لها الاستفادة من هذا العرض." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "الحد الأعلى للمبلغ بالدولار الأمريكي الذي يمكن استرداده بواسطة هذا العرض من قبل مستخدم واحد." -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "تاريخ البدء" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "تاريخ الانتهاء" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "حد الالتحاق" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "حد الحجوزات" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "حد الالتحاق لكل مستخدم" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "حد الحجوزات لكل مستخدم" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "تأكد من أن القيمة الجديدة أكبر من أو تساوي({offer_enrollments}) من القيمة المستهلكة ." -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "تأكد من أن هذه القيمة أكبر من أو تساوي 0." -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "تأكد من أن القيمة الجديدة أكبر من أو تساوي({consumed_discount:.2f}) من القيمة المستهلكة ." -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "عنوان البريد الإلكتروني المعطى {email} غير صحيح." -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "يوجد عرض مسبق لهذه المجموعة وللدليل." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "لا يمكن أن تكون نسبة الخصومات أعلى من 100٪." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "يجب تحديد تاريخ البدء عند تحديد تاريخ الانتهاء." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "يجب أن يكون تاريخ البدء قبل تاريخ الانتهاء." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "لا يسمح بإدراج أكثر من رقمين بعد الكسر العشري للقيمة المطلقة." -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "هذا الحقل مطلوب عندما يكون نوع الخصم على العقد مطلقاً." -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "خصم من نوع {}  قدمه {} لـِ {}." @@ -809,41 +820,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "لم نحصل على معلومات كافية عنك لإجراء العملية الحسابية." -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "منتهِ الصلاحية" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "غير نشط" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "فعّال" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "يجب أن يكون للمنتجات نوع شهادة." -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "يجب أن يكون للمنتجات سعر" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "يجب عليك تقديم رمز التعريف المميز للمساق لإنشاء ميزات المساق." -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "يجب أن تحدّد المنتجات فيما إذا كان توثيق الرقم التعريفي مطلوبًا " -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "جرى طلب فئة منتجات [{product_class}] غير صالحة" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -851,39 +862,40 @@ msgid "" " been saved." msgstr "لم يُنشر المساق [{course_id}] إلى نظام إدارة التعلّم ’LMS‘ نظرًا لإلغاء تفعيل التبديل [publish_course_modes_to_lms]. لم يجري حفظ البيانات لتفادي كودات التخزين التعريفية الزائفة." -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "رمز التسجيل" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "رمز الخصم" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." -msgstr "رقم الطلب غير صحيح أو الطلب {} غير متوفر " +msgstr "رقم الطلبية غير صحيح أو الطلبية {} غير موجودة " -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "فشل تعيين قسيمة عروض جديدة. خطأ: {}" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." -msgstr "لا يمكن استرداد طلبك {} لأن قسيمة '{}' لا تدعم خاصية استرداد المبلغ." +msgstr "لا يمكن استرداد طلبيتك {} لأن قسيمة '{}' لا تدعم خاصية استرداد المبلغ." -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" -msgstr "يمكن ملاحظة إنشاء قسيمة جديدة للطلب: {}" +msgstr "يمكن ملاحظة إنشاء قسيمة جديدة للطلبية: {}" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr " وحدة حفظ المخزون غير متوفّرة." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "لا يوجد منتجات بوحدة(ات) حفظ المخزون [{skus}]." @@ -921,84 +933,84 @@ msgstr "نوع الخاصية" msgid "Text Attribute" msgstr "خاصية النص" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "نظرا لضوابط التصدير، لا يمكننا السماح لك بالوصول إلى هذا المساق في الوقت الحالي." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "انقر هنا لشراء التسجيل لنفسك" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "انقر هنا لشراء عدّة مقاعد في هذه الدورة التدريبية" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "انتهت صلاحية القسيمة رمز '{code}'." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "رمز القسيمة '{code}' غير فعّال." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "رمز القسيمة '{code}' غير متوفر. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "رمز القسيمة '{code}' غير صالح لهذه السلة." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "رمز القسيمة '{code}' غير صالح لهذه السلة لغرض شراء الحزمة." -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "تمت إضافة القسيمة رمز '{code}' إلى السلة." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "سلتك غير مؤهلة للحصول على رمز القسيمة {code}." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "تعذر تطبيق الرمز '{code}'؛ فهو يلزم موافقة على مشاركة البيانات." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." -msgstr "عند إتمام طلبك ستكون قادرًا على تحديد تواريخ المساق من لوحة معلوماتك." +msgstr "عند إتمام طلبيتك ستكون قادرًا على تحديد تواريخ المساق من لوحة معلوماتك." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." -msgstr "عند استكمال طلبك سيتم إلحاقك تلقائيًا في المسار الموثّق للمساق." +msgstr "عند استكمال طلبيتك سيتم إلحاقك تلقائيًا في المسار الموثّق للمساق." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." -msgstr "عند إتمام طلبك ستحصل على وحدات لمساقك." +msgstr "عند إتمام طلبيتك ستحصل على اعتماد لمساقك." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." -msgstr "عند استكمال طلبك سيتم إلحاقك تلقائيًا في للمساق." +msgstr "عند استكمال طلبيتك سيتم إلحاقك تلقائيًا في للمساق." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1015,7 +1027,7 @@ msgid "" "{paragraph_end}" msgstr "{paragraph_start} عند الشراء، توافق أنت والمؤسسة على الشروط التالية:{paragraph_end} {ul_start} {li_start} كل رمز صالح للمساق الواحد الذي تم تناوله ويمكن استخدامه مرة واحدة فقط.{li_end} {li_start}أنت المسؤول عن توزيع الرموز على المتعلمين في مؤسستك.{li_end} {li_start}ستنتهي صلاحية كل رمز خلال سنة واحدة من تاريخ الشراء أو-على الأقرب- فبمجرد إغلاق المساق.{li_end} {li_start}إذا لم يتم تعيين المساق على نظام التعلم الذاتي، فعليك التأكيد على أن مشغل المساق متوفر قبل انتهاء صلاحيته. {li_end} {li_start}لا يجوز لك إعادة بيع الرموز لجهات خارجية.{li_end} {li_start}كل عمليات edX لمبيعات الأعمال نهائية ومخوّلة لاسترداد الرسوم.{li_end}{ul_end} {paragraph_start}ستتلقى بريدًا إلكترونيًا على {user_email} يتضمن رمز (رموز) الالتحاق. {paragraph_end}" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1024,44 +1036,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "{strong_start}هل تنوي الشراء لنفسك فقط؟ {strong_end}{paragraph_start} إذا كنت تشتري رمزًا واحدًا لشخص آخر، فيرجى متابعة الطلب. إما إذا كنت أنت المتعلم {link_start}يرجى العودة إلى {link_end} للالتحاق مباشرة.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "لقد اشتريت هذه المنتجات من قبل" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "لا تتوفر منتجات للبيع" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "تم تحديث الكمية بنجاح" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "لا يمكن تحديث سلّتك. يرجى تصحيح أي أخطاء واردة في عملية التحقق أدناه." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "لقد أضفت بالفعل رمز القسيمة '{code}' إلى سلتك." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "القسيمة رمز '{code}' غير موجودة." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "تعذّر العثور على قسيمة بالرمز '%s'" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "تمت إزالة رمز القسيمة '%s' من سلّتك." -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "آخر تاريخ/توقيت يمكن شراء هذا المنتج فيه " @@ -1127,6 +1139,20 @@ msgstr "الحالة" msgid "Failed to retrieve enrollment data." msgstr "عذرًا، لقد فشلنا في استرجاع بيانات التسجيل." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "اليوم 3" @@ -1159,23 +1185,23 @@ msgstr "تلقائي" msgid "Manual" msgstr "يدوي" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "معرف دليل المساقات من خدمة الاستكشاف." -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "المعرف العالمي المميز لـEnterpriseCustomerCatalog من خدمة عملاء المجموعات." -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "اسم العميل المجموعة" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "المعرف العالمي المميز لدليل العملاء المجموعات." -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1186,35 +1212,35 @@ msgstr "المعرف العالمي المميز لدليل العملاء ال msgid "Program UUID" msgstr "معرف البرنامج العالمي الخاص UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "رسالة البريد الإلكتروني للمستخدم معلّقة." -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "تم تعيين الرمز للمستخدم بنجاح." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "تم استرداد الرمز من قبل المستخدم." -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "تم استرداد البريد الإلكتروني للمستخدم." -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "تم إلغاء الرمز لهذا المستخدم." -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "تنشيط إصدار قالب معين." -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "تم إرسال رسالة بريد إلكتروني" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "يجب أن تصل رسالة بريد إلكتروني للمستخدم." @@ -1236,7 +1262,7 @@ msgid "" "Order administration has been disabled due to the load on the database. This" " functionality can be restored by activating the {switch_name} Waffle " "switch. Be careful when re-activating this switch!" -msgstr "تم تعطيل إدارة الطلبات بسبب الحمل الزائد على قاعدة البيانات. يمكن استعادة هذه الوظيفة من خلال تفعيل مفتاح Waffle {switch_name}. كن حذرا عند إعادة تنشيط هذا المفتاح!" +msgstr "تم تعطيل إدارة الطلبيات بسبب الحمل الزائد على قاعدة البيانات. يمكن استعادة هذه الوظيفة من خلال تفعيل مفتاح Waffle {switch_name}. كن حذرا عند إعادة تنشيط هذا المفتاح!" #: ecommerce/extensions/order/benefits.py:22 #, python-format @@ -1252,7 +1278,7 @@ msgstr "معالج الدفعات" msgid "" "It expect that the order numbers stuck in fulfillment error state will be" " provided in a txt file format one per line." -msgstr "يتوقع أن تكون أرقام الطلبات العالقة في حالة خطأ التنفيذ متوفر بتنسيق ملف txt واحد لكل سطر." +msgstr "يتوقع أن تكون أرقام الطلبيات العالقة في حالة خطأ التنفيذ متوفر بتنسيق ملف txt واحد لكل سطر." #: ecommerce/extensions/partner/admin.py:28 msgid "Click 'Save and Continue Editing' to add stock records" @@ -1264,7 +1290,7 @@ msgstr "انقر على ’حفظ ومتابعة التحرير‘ لإضافة msgid "Partner" msgstr "الشريك" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "الشركاء" @@ -1273,14 +1299,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "استكشف" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1311,7 +1353,7 @@ msgstr "أشتري نيابة عن مديري أو أي شخص في مؤسستي #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "عذراً، حدثت مشكلة في عملية استعادة سلتك. الرجاء تحديث الصفحة لإعادة المحاولة. " @@ -1393,11 +1435,11 @@ msgstr "لا يسمح بالنسب أعلى من ١٠٠" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "تم رفض العملية" @@ -1442,7 +1484,7 @@ msgid "Line Credit (excl. tax)" msgstr "رصيد الخط (باستثناء الضريبة)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1497,7 +1539,7 @@ msgstr "تم الاسترداد" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1833,7 +1875,7 @@ msgstr "محتوى UTM" msgid "UTM Created At" msgstr "تم إنشاء UTM في" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1846,38 +1888,38 @@ msgstr "تم إنشاء UTM في" msgid "Dashboard" msgstr "لوحة المعلومات" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "الكتالوج" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "المنتجات" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "أنواع المنتج" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "الفئات" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "المجالات" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "تنبيهات قلّة المخزون" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "الإنجاز" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1889,11 +1931,11 @@ msgstr "الإنجاز" msgid "Orders" msgstr "الطلبيات" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "الإحصائيات" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1904,25 +1946,25 @@ msgstr "الإحصائيات" msgid "Refunds" msgstr "استرداد المبالغ" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "العملاء" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "طلبات تنبيه بالنسبة للمخزون" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "عروض" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "القسائم" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "التقارير" @@ -2025,11 +2067,11 @@ msgstr "تسجيل الخروج" #: ecommerce/templates/edx/checkout/receipt.html:13 #, python-format msgid "Receipt for %(order_number)s" -msgstr "إيصال لـ%(order_number)s" +msgstr "وصل لـ%(order_number)s" #: ecommerce/templates/edx/checkout/receipt.html:43 msgid "Thank you for your order!" -msgstr "شكراً لطلبك!" +msgstr "شكراً لطلبيتك!" #: ecommerce/templates/edx/checkout/receipt.html:53 #, python-brace-format @@ -2037,91 +2079,100 @@ msgid "" "Your order is complete. You will receive a confirmation message and your " "enrollment code(s) at {link_start}{email}{link_end}. If you need a receipt, " "you can print this page." -msgstr "طلبك مكتمل. ستتلقى رسالة تأكيد ورمز (رموز) التأكيد على {link_start}{email}{link_end}. عند الحاجة لإيصال الدفع، يمكنك طباعة هذه الصفحة." +msgstr "طلبيتك مكتملة. ستتلقى رسالة تأكيد ورمز (رموز) التأكيد على {link_start}{email}{link_end}. عند الحاجة لإيصال الدفع، يمكنك طباعة هذه الصفحة." -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" -msgstr "رقم الطلب:" +msgstr "رقم الطلبية:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "طريقة الدفع:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" -msgstr "تاريخ الطلب:" +msgstr "تاريخ الطلبية:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" -msgstr "تفاصيل الطلب:" +msgstr "تفاصيل الطلبية:" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "الوصف" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "سعر العنصر" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "الكمّية:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "وصف:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "سعر الغرض:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "إجمالي" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "خصم %(voucher_discount_amount)s" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "خصم من نوع %(type)s قدمه %(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "خصم لعملية الترقية الأولى" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "تم تقديم خصم من نوع %(type)s" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "إهداء من %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "المجموع" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "أحصل على نقاط دورتك" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2131,17 +2182,17 @@ msgid "" " course name." msgstr "للحصول على الائتمان الدراسي لهذا المساق، يجب عليك تقديم طلب للحصول على الائتمان من المؤسسة التي تقدم الائتمان. يمكنك العثور على رابط موقع المؤسسة في {link_start}{lms_dashboard_url}{link_middle} لوحة المعلومات {link_end} بجانب اسم المساق." -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "الذهاب إلى لوحة المعلومات" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "استكشاف المزيد من المساقات" #: ecommerce/templates/edx/checkout/receipt_not_found.html:7 msgid "Order Not Found" -msgstr "الطلب غير موجود" +msgstr "الطلبية غير موجودة" #: ecommerce/templates/edx/checkout/receipt_not_found.html:19 #, python-format @@ -2152,7 +2203,7 @@ msgstr "%(error_summary)s" msgid "" "The specified order could not be located. Please ensure that the URL is " "correct, and try again." -msgstr "لا يمكن العثور على الطلب المحدد. الرجاء التأكد من أن عنوان الموقع صحيح، وحاول مرة أخرى." +msgstr "لا يمكن العثور على الطلبية المحددة. الرجاء التأكد من أن عنوان الموقع صحيح، وحاول مرة أخرى." #: ecommerce/templates/edx/checkout/receipt_not_found.html:31 #, python-brace-format @@ -2161,7 +2212,7 @@ msgid "" " You may also view your previous orders on the {link_start}{order_history_url}{link_middle}{link_end}Account Settings{link_end}\n" " page.\n" " " -msgstr "\nيمكنك أيضاً عرض طلباتك السابقة في صفحة {link_start}{order_history_url}{link_middle}{link_end}إعدادات الحساب {link_end}." +msgstr "\nيمكنك أيضاً عرض طلبياتك السابقة في صفحة {link_start}{order_history_url}{link_middle}{link_end}إعدادات الحساب {link_end}." #: ecommerce/templates/edx/credit/_provider_detail.html:8 msgid "Select" @@ -2443,7 +2494,7 @@ msgstr "إجمالي" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:135 msgid "order details" -msgstr "تفاصيل الطلب" +msgstr "تفاصيل الطلبية" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:153 msgid "select payment method" @@ -2516,7 +2567,7 @@ msgstr "السنة" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:274 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:152 msgid "Place Order" -msgstr "وضع الطلب" +msgstr "إيداع الطلبية" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:23 msgid "Earn a valuable certificate to showcase the skills you learn in" @@ -2822,7 +2873,7 @@ msgstr "لقد وصلتك هذه الرسالة لأنك قد اشتريت سا #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_subject.txt:2 msgid "Order Receipt" -msgstr "إيصال الطلب" +msgstr "وصل الطلبية" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:14 msgid "For Business" @@ -2865,7 +2916,7 @@ msgid "" "\n" " To view your payment information, log in to see your Order History, under {link_start}{order_history_url}{link_middle}Account Settings{link_end}.\n" " " -msgstr "\nلعرض معلومات الدفع يمكنك تسجيل الدخول لعرض سجل الطلبات في صفحة {link_start}{order_history_url}{link_middle} إعدادات الحساب{link_end}." +msgstr "\nلعرض معلومات الدفع يمكنك تسجيل الدخول لعرض سجل الطلبيات في صفحة {link_start}{order_history_url}{link_middle} إعدادات الحساب{link_end}." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:45 #, python-brace-format @@ -2922,7 +2973,7 @@ msgstr "جميع عمليات البيع نهائية ، ولا يمكن است #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:2 msgid "Order confirmation for: " -msgstr "تأكيد الطلب لصالح:" +msgstr "تأكيد الطلبية لصالح:" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:8 #, python-format @@ -2936,7 +2987,7 @@ msgstr "يرجى زيارة %(download_csv_link)sلتحميل وحفظ ملف ك msgid "" "To view your payment information, log in to see your Order History, under " "Account Settings at %(order_history_url)s." -msgstr "لعرض معلومات الدفع يرجى تسجيل الدخول لعرض سجل الطلبات في تبويب إعدادات الحساب في %(order_history_url)s." +msgstr "لعرض معلومات الدفع يرجى تسجيل الدخول لعرض سجل الطلبيات في تبويب إعدادات الحساب في %(order_history_url)s." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:14 msgid "For more information and assistance, contact info@edx.org." @@ -2945,7 +2996,7 @@ msgstr "لمزيد من المعلومات أو للحصول على المساع #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_subject.txt:2 #, python-format msgid "%(partner_name)s: Order Confirmation: [%(order_number)s]" -msgstr "%(partner_name)s: تأكيد الطلب: [%(order_number)s]" +msgstr "%(partner_name)s: تأكيد الطبية: [%(order_number)s]" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:6 #: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:6 @@ -3179,11 +3230,11 @@ msgstr "إيرادات" #: ecommerce/templates/oscar/dashboard/index.html:36 msgid "Average order cost" -msgstr "متوسط تكلفة الطلب" +msgstr "متوسط تكلفة الطلبية" #: ecommerce/templates/oscar/dashboard/index.html:37 msgid "Average (paid) order cost" -msgstr "متوسط تكلفة الطلب (المدفوعة)" +msgstr "متوسط تكلفة االطلبية (المدفوعة)" #: ecommerce/templates/oscar/dashboard/index.html:67 msgid "Products and vouchers" @@ -3236,7 +3287,7 @@ msgstr "التكلفة الإجمالية:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:42 msgid "Number of orders:" -msgstr "عدد الطلبات:" +msgstr "عدد الطلبيات:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:43 msgid "Number of uses:" @@ -3271,7 +3322,7 @@ msgstr "تصدير إلى CSV" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:93 msgid "Orders that used this offer" -msgstr "الطلبات التي استخدمت هذا العرض" +msgstr "الطلبيات التي استخدمت هذا العرض" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:97 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:68 @@ -3280,7 +3331,7 @@ msgstr "رقم الطلبية" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:98 msgid "Order date" -msgstr "تاريخ الطلب" +msgstr "تاريخ الطلبية" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:99 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:292 @@ -3301,7 +3352,7 @@ msgid "" "\n" " Order %(number)s - Line #%(id)s\n" " " -msgstr "\n الطلب %(number)s - الخط #%(id)s\n " +msgstr "\n الطلبية %(number)s - السطر #%(id)s\n " #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:22 #, python-format @@ -3311,7 +3362,7 @@ msgstr "الخط #%(id)s" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:27 #, python-format msgid "Order #%(number)s - Line #%(id)s" -msgstr "الطلب #%(number)s - الخط #%(id)s" +msgstr "الطلبية #%(number)s - السطر #%(id)s" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:38 msgctxt "Product title" @@ -3760,7 +3811,7 @@ msgstr "لا يمكن تعديل الملاحظات إلّا في غون 5 دق #: ecommerce/templates/oscar/dashboard/orders/order_list.html:58 msgid "Download selected orders as a CSV" -msgstr "تنزيل الطلبيات المختارة بصيغة CSV" +msgstr "تنزيل الطلبيات المحددة بصيغة CSV" #: ecommerce/templates/oscar/dashboard/orders/order_list.html:60 msgid "Download" @@ -3783,7 +3834,7 @@ msgstr "جرى الحذف" #: ecommerce/templates/oscar/dashboard/orders/order_list.html:149 msgid "No orders found." -msgstr "لم توجد أي طلبيات." +msgstr "لا توجد طلبيات." #: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:4 #: ecommerce/templates/oscar/dashboard/users/detail.html:123 diff --git a/ecommerce/conf/locale/ar/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ar/LC_MESSAGES/djangojs.mo index 97fb89907fb..ec25de27fa0 100644 Binary files a/ecommerce/conf/locale/ar/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ar/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ar/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ar/LC_MESSAGES/djangojs.po index 159d7f3ecaa..5eef83ec1e8 100644 --- a/ecommerce/conf/locale/ar/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ar/LC_MESSAGES/djangojs.po @@ -27,10 +27,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: NELC Open edX Translation , 2020\n" -"Language-Team: Arabic (http://www.transifex.com/open-edx/edx-platform/language/ar/)\n" +"Language-Team: Arabic (http://app.transifex.com/open-edx/edx-platform/language/ar/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -329,11 +329,11 @@ msgstr "رمز التسجيل" msgid "Discount Code" msgstr "رمز الخصم" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "حفّظ التغييرات" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "إنشاء قسيمة" @@ -475,7 +475,7 @@ msgstr "نوع المقعد" msgid "Can be used multiple times by one customer" msgstr "يمكن استخدامه عدة مرات لنفس العميل" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "إنشاء وإضافة المزيد" diff --git a/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/django.mo index 205f4ea9941..a1702b70e55 100644 Binary files a/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/django.po b/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/django.po index e98f93254b9..0ec3f60eed4 100644 --- a/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Arabic (Algeria) (http://www.transifex.com/open-edx/edx-platform/language/ar_DZ/)\n" +"Language-Team: Arabic (Algeria) (http://app.transifex.com/open-edx/edx-platform/language/ar_DZ/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/djangojs.mo index ff3ff3d9f95..326db68d34c 100644 Binary files a/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/djangojs.po index 7f321430f5b..37bea7c92b7 100644 --- a/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ar_DZ/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Arabic (Algeria) (http://www.transifex.com/open-edx/edx-platform/language/ar_DZ/)\n" +"Language-Team: Arabic (Algeria) (http://app.transifex.com/open-edx/edx-platform/language/ar_DZ/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ar_EG/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ar_EG/LC_MESSAGES/django.mo index 58f22a040a7..25c15554493 100644 Binary files a/ecommerce/conf/locale/ar_EG/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ar_EG/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ar_EG/LC_MESSAGES/django.po b/ecommerce/conf/locale/ar_EG/LC_MESSAGES/django.po index a658150f18a..17f4ef48326 100644 --- a/ecommerce/conf/locale/ar_EG/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ar_EG/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Fady Selim, 2021\n" -"Language-Team: Arabic (Egypt) (http://www.transifex.com/open-edx/edx-platform/language/ar_EG/)\n" +"Language-Team: Arabic (Egypt) (http://app.transifex.com/open-edx/edx-platform/language/ar_EG/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ar_EG/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ar_EG/LC_MESSAGES/djangojs.mo index 248d35da873..a0199af1b26 100644 Binary files a/ecommerce/conf/locale/ar_EG/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ar_EG/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ar_EG/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ar_EG/LC_MESSAGES/djangojs.po index 4fa89b56ed0..5f98a02524d 100644 --- a/ecommerce/conf/locale/ar_EG/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ar_EG/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Fady Selim, 2021\n" -"Language-Team: Arabic (Egypt) (http://www.transifex.com/open-edx/edx-platform/language/ar_EG/)\n" +"Language-Team: Arabic (Egypt) (http://app.transifex.com/open-edx/edx-platform/language/ar_EG/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ar_SA/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ar_SA/LC_MESSAGES/django.mo index 654f8993dee..f736c329ca7 100644 Binary files a/ecommerce/conf/locale/ar_SA/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ar_SA/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ar_SA/LC_MESSAGES/django.po b/ecommerce/conf/locale/ar_SA/LC_MESSAGES/django.po index 666108ef146..e8aee04f3fb 100644 --- a/ecommerce/conf/locale/ar_SA/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ar_SA/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: NELC Open edX Translation , 2020\n" -"Language-Team: Arabic (Saudi Arabia) (http://www.transifex.com/open-edx/edx-platform/language/ar_SA/)\n" +"Language-Team: Arabic (Saudi Arabia) (http://app.transifex.com/open-edx/edx-platform/language/ar_SA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ar_SA/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ar_SA/LC_MESSAGES/djangojs.mo index e9ebb15f279..f2f4198e53a 100644 Binary files a/ecommerce/conf/locale/ar_SA/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ar_SA/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ar_SA/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ar_SA/LC_MESSAGES/djangojs.po index 966094dbff5..2962eb439c5 100644 --- a/ecommerce/conf/locale/ar_SA/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ar_SA/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: NELC Open edX Translation , 2020\n" -"Language-Team: Arabic (Saudi Arabia) (http://www.transifex.com/open-edx/edx-platform/language/ar_SA/)\n" +"Language-Team: Arabic (Saudi Arabia) (http://app.transifex.com/open-edx/edx-platform/language/ar_SA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "رمز التسجيل" msgid "Discount Code" msgstr "رمز التخفيض" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "حفّظ التغييرات" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "إنشاء قسيمة" @@ -462,7 +462,7 @@ msgstr "نوع المقعد" msgid "Can be used multiple times by one customer" msgstr "يمكن استخدامه عدة مرات لعميل واحد" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "إنشاء وإضافة المزيد" diff --git a/ecommerce/conf/locale/ar_SD/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ar_SD/LC_MESSAGES/django.mo index ccffb90b424..2eb8e2e3b9e 100644 Binary files a/ecommerce/conf/locale/ar_SD/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ar_SD/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ar_SD/LC_MESSAGES/django.po b/ecommerce/conf/locale/ar_SD/LC_MESSAGES/django.po index 06a3d4fd993..7d1cde8f67a 100644 --- a/ecommerce/conf/locale/ar_SD/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ar_SD/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Arabic (Sudan) (http://www.transifex.com/open-edx/edx-platform/language/ar_SD/)\n" +"Language-Team: Arabic (Sudan) (http://app.transifex.com/open-edx/edx-platform/language/ar_SD/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ar_SD/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ar_SD/LC_MESSAGES/djangojs.mo index 4d1d28a3c45..4834ed25ef4 100644 Binary files a/ecommerce/conf/locale/ar_SD/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ar_SD/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ar_SD/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ar_SD/LC_MESSAGES/djangojs.po index 3634b597691..dc9d1339341 100644 --- a/ecommerce/conf/locale/ar_SD/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ar_SD/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Arabic (Sudan) (http://www.transifex.com/open-edx/edx-platform/language/ar_SD/)\n" +"Language-Team: Arabic (Sudan) (http://app.transifex.com/open-edx/edx-platform/language/ar_SD/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/az/LC_MESSAGES/django.mo b/ecommerce/conf/locale/az/LC_MESSAGES/django.mo index 629af5bac04..c0af6a4e4ff 100644 Binary files a/ecommerce/conf/locale/az/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/az/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/az/LC_MESSAGES/django.po b/ecommerce/conf/locale/az/LC_MESSAGES/django.po index 16e9a643547..4a38915c065 100644 --- a/ecommerce/conf/locale/az/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/az/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Laman Mammadli , 2019\n" -"Language-Team: Azerbaijani (http://www.transifex.com/open-edx/edx-platform/language/az/)\n" +"Language-Team: Azerbaijani (http://app.transifex.com/open-edx/edx-platform/language/az/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/az/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/az/LC_MESSAGES/djangojs.mo index 829ff1ec849..30b4e6d92b3 100644 Binary files a/ecommerce/conf/locale/az/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/az/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/az/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/az/LC_MESSAGES/djangojs.po index c67d0ec26ef..5fac89c8920 100644 --- a/ecommerce/conf/locale/az/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/az/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Laman Mammadli , 2019\n" -"Language-Team: Azerbaijani (http://www.transifex.com/open-edx/edx-platform/language/az/)\n" +"Language-Team: Azerbaijani (http://app.transifex.com/open-edx/edx-platform/language/az/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/az_AZ/LC_MESSAGES/django.mo b/ecommerce/conf/locale/az_AZ/LC_MESSAGES/django.mo index c832eeffc63..8a959c5dbf1 100644 Binary files a/ecommerce/conf/locale/az_AZ/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/az_AZ/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/az_AZ/LC_MESSAGES/django.po b/ecommerce/conf/locale/az_AZ/LC_MESSAGES/django.po index 86eee4f840d..27631c5f087 100644 --- a/ecommerce/conf/locale/az_AZ/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/az_AZ/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Azerbaijani (Azerbaijan) (http://www.transifex.com/open-edx/edx-platform/language/az_AZ/)\n" +"Language-Team: Azerbaijani (Azerbaijan) (http://app.transifex.com/open-edx/edx-platform/language/az_AZ/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/az_AZ/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/az_AZ/LC_MESSAGES/djangojs.mo index 3c1bd528b9d..1b16dee3da6 100644 Binary files a/ecommerce/conf/locale/az_AZ/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/az_AZ/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/az_AZ/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/az_AZ/LC_MESSAGES/djangojs.po index 5622aa719b5..b98d074c123 100644 --- a/ecommerce/conf/locale/az_AZ/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/az_AZ/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Azerbaijani (Azerbaijan) (http://www.transifex.com/open-edx/edx-platform/language/az_AZ/)\n" +"Language-Team: Azerbaijani (Azerbaijan) (http://app.transifex.com/open-edx/edx-platform/language/az_AZ/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/bg/LC_MESSAGES/django.mo b/ecommerce/conf/locale/bg/LC_MESSAGES/django.mo index b0ecd8bea65..dde2ea64232 100644 Binary files a/ecommerce/conf/locale/bg/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/bg/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/bg/LC_MESSAGES/django.po b/ecommerce/conf/locale/bg/LC_MESSAGES/django.po index 9efc57ed177..61dfe8b98b5 100644 --- a/ecommerce/conf/locale/bg/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/bg/LC_MESSAGES/django.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Has Mobi , 2015\n" -"Language-Team: Bulgarian (http://www.transifex.com/open-edx/edx-platform/language/bg/)\n" +"Language-Team: Bulgarian (http://app.transifex.com/open-edx/edx-platform/language/bg/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,332 +47,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -382,43 +382,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -480,150 +480,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -793,41 +803,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -835,39 +845,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -905,84 +916,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -999,7 +1010,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1008,44 +1019,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1111,6 +1122,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1143,23 +1168,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1170,35 +1195,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1248,7 +1273,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1257,14 +1282,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1295,7 +1336,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1377,11 +1418,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1426,7 +1467,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1481,7 +1522,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1817,7 +1858,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1830,38 +1871,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1873,11 +1914,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1888,25 +1929,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2023,89 +2064,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2115,11 +2165,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/bg/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/bg/LC_MESSAGES/djangojs.mo index 881f84029de..50549ee3ae9 100644 Binary files a/ecommerce/conf/locale/bg/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/bg/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/bg/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/bg/LC_MESSAGES/djangojs.po index 91cdc0eacbe..59bdf9cce77 100644 --- a/ecommerce/conf/locale/bg/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/bg/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Bulgarian (http://www.transifex.com/open-edx/edx-platform/language/bg/)\n" +"Language-Team: Bulgarian (http://app.transifex.com/open-edx/edx-platform/language/bg/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/bg_BG/LC_MESSAGES/django.mo b/ecommerce/conf/locale/bg_BG/LC_MESSAGES/django.mo index a28db15295e..002e71849fd 100644 Binary files a/ecommerce/conf/locale/bg_BG/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/bg_BG/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/bg_BG/LC_MESSAGES/django.po b/ecommerce/conf/locale/bg_BG/LC_MESSAGES/django.po index 2fc09db9223..455a348e4d3 100644 --- a/ecommerce/conf/locale/bg_BG/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/bg_BG/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/open-edx/edx-platform/language/bg_BG/)\n" +"Language-Team: Bulgarian (Bulgaria) (http://app.transifex.com/open-edx/edx-platform/language/bg_BG/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/bg_BG/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/bg_BG/LC_MESSAGES/djangojs.mo index 3368bdad7e3..ae905872ea7 100644 Binary files a/ecommerce/conf/locale/bg_BG/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/bg_BG/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/bg_BG/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/bg_BG/LC_MESSAGES/djangojs.po index da6a9ff1b80..ca04137c637 100644 --- a/ecommerce/conf/locale/bg_BG/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/bg_BG/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/open-edx/edx-platform/language/bg_BG/)\n" +"Language-Team: Bulgarian (Bulgaria) (http://app.transifex.com/open-edx/edx-platform/language/bg_BG/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/bn/LC_MESSAGES/django.mo b/ecommerce/conf/locale/bn/LC_MESSAGES/django.mo index 2c829e543b4..274a6338544 100644 Binary files a/ecommerce/conf/locale/bn/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/bn/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/bn/LC_MESSAGES/django.po b/ecommerce/conf/locale/bn/LC_MESSAGES/django.po index 81f623b433b..83e60495892 100644 --- a/ecommerce/conf/locale/bn/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/bn/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Bengali (http://www.transifex.com/open-edx/edx-platform/language/bn/)\n" +"Language-Team: Bengali (http://app.transifex.com/open-edx/edx-platform/language/bn/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/bn/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/bn/LC_MESSAGES/djangojs.mo index b6663169b81..9315d41108b 100644 Binary files a/ecommerce/conf/locale/bn/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/bn/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/bn/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/bn/LC_MESSAGES/djangojs.po index 816d3a31597..72294d1f13b 100644 --- a/ecommerce/conf/locale/bn/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/bn/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Bengali (http://www.transifex.com/open-edx/edx-platform/language/bn/)\n" +"Language-Team: Bengali (http://app.transifex.com/open-edx/edx-platform/language/bn/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/bn_BD/LC_MESSAGES/django.mo b/ecommerce/conf/locale/bn_BD/LC_MESSAGES/django.mo index c868e714e7f..eaf76440bd9 100644 Binary files a/ecommerce/conf/locale/bn_BD/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/bn_BD/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/bn_BD/LC_MESSAGES/django.po b/ecommerce/conf/locale/bn_BD/LC_MESSAGES/django.po index fb3726bdc05..1b72b737e7f 100644 --- a/ecommerce/conf/locale/bn_BD/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/bn_BD/LC_MESSAGES/django.po @@ -17,10 +17,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Anthony Mangano , 2017\n" -"Language-Team: Bengali (Bangladesh) (http://www.transifex.com/open-edx/edx-platform/language/bn_BD/)\n" +"Language-Team: Bengali (Bangladesh) (http://app.transifex.com/open-edx/edx-platform/language/bn_BD/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,332 +49,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -384,43 +384,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -482,150 +482,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -795,41 +805,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -837,39 +847,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -907,84 +918,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1001,7 +1012,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1010,44 +1021,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1113,6 +1124,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1145,23 +1170,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1172,35 +1197,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1250,7 +1275,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1259,14 +1284,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1297,7 +1338,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1379,11 +1420,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1428,7 +1469,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1483,7 +1524,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1819,7 +1860,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1832,38 +1873,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1875,11 +1916,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1890,25 +1931,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2025,89 +2066,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2117,11 +2167,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/bn_BD/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/bn_BD/LC_MESSAGES/djangojs.mo index 9218a660c92..3de263a9070 100644 Binary files a/ecommerce/conf/locale/bn_BD/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/bn_BD/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/bn_BD/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/bn_BD/LC_MESSAGES/djangojs.po index e11c12fc5cb..809db96c415 100644 --- a/ecommerce/conf/locale/bn_BD/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/bn_BD/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: sunanda chakraborty , 2017\n" -"Language-Team: Bengali (Bangladesh) (http://www.transifex.com/open-edx/edx-platform/language/bn_BD/)\n" +"Language-Team: Bengali (Bangladesh) (http://app.transifex.com/open-edx/edx-platform/language/bn_BD/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/bn_IN/LC_MESSAGES/django.mo b/ecommerce/conf/locale/bn_IN/LC_MESSAGES/django.mo index 8247e420e01..8775ea9934a 100644 Binary files a/ecommerce/conf/locale/bn_IN/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/bn_IN/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/bn_IN/LC_MESSAGES/django.po b/ecommerce/conf/locale/bn_IN/LC_MESSAGES/django.po index 64cd5df22ae..0d6459cb7c3 100644 --- a/ecommerce/conf/locale/bn_IN/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/bn_IN/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Bengali (India) (http://www.transifex.com/open-edx/edx-platform/language/bn_IN/)\n" +"Language-Team: Bengali (India) (http://app.transifex.com/open-edx/edx-platform/language/bn_IN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/bn_IN/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/bn_IN/LC_MESSAGES/djangojs.mo index a963f2ec10d..39b3b917faf 100644 Binary files a/ecommerce/conf/locale/bn_IN/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/bn_IN/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/bn_IN/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/bn_IN/LC_MESSAGES/djangojs.po index bbe03612c61..79d26c04d55 100644 --- a/ecommerce/conf/locale/bn_IN/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/bn_IN/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Bengali (India) (http://www.transifex.com/open-edx/edx-platform/language/bn_IN/)\n" +"Language-Team: Bengali (India) (http://app.transifex.com/open-edx/edx-platform/language/bn_IN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/bo/LC_MESSAGES/django.mo b/ecommerce/conf/locale/bo/LC_MESSAGES/django.mo index bc4743e047a..592ba026d2b 100644 Binary files a/ecommerce/conf/locale/bo/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/bo/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/bo/LC_MESSAGES/django.po b/ecommerce/conf/locale/bo/LC_MESSAGES/django.po index 7b32edbceca..081b4bd8adb 100644 --- a/ecommerce/conf/locale/bo/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/bo/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Tibetan (http://www.transifex.com/open-edx/edx-platform/language/bo/)\n" +"Language-Team: Tibetan (http://app.transifex.com/open-edx/edx-platform/language/bo/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/bo/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/bo/LC_MESSAGES/djangojs.mo index 1067a366fc4..10bd5aad92e 100644 Binary files a/ecommerce/conf/locale/bo/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/bo/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/bo/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/bo/LC_MESSAGES/djangojs.po index e1c916cebf3..5a3cc603b5e 100644 --- a/ecommerce/conf/locale/bo/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/bo/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Tibetan (http://www.transifex.com/open-edx/edx-platform/language/bo/)\n" +"Language-Team: Tibetan (http://app.transifex.com/open-edx/edx-platform/language/bo/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/bs/LC_MESSAGES/django.mo b/ecommerce/conf/locale/bs/LC_MESSAGES/django.mo index b681c662273..5d17cfc80dc 100644 Binary files a/ecommerce/conf/locale/bs/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/bs/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/bs/LC_MESSAGES/django.po b/ecommerce/conf/locale/bs/LC_MESSAGES/django.po index 0fbcff70898..a5816beaadd 100644 --- a/ecommerce/conf/locale/bs/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/bs/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Bosnian (http://www.transifex.com/open-edx/edx-platform/language/bs/)\n" +"Language-Team: Bosnian (http://app.transifex.com/open-edx/edx-platform/language/bs/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/bs/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/bs/LC_MESSAGES/djangojs.mo index c1a825bc116..85bf338acd2 100644 Binary files a/ecommerce/conf/locale/bs/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/bs/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/bs/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/bs/LC_MESSAGES/djangojs.po index 0f3ed271954..15fa0f0d68e 100644 --- a/ecommerce/conf/locale/bs/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/bs/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Bosnian (http://www.transifex.com/open-edx/edx-platform/language/bs/)\n" +"Language-Team: Bosnian (http://app.transifex.com/open-edx/edx-platform/language/bs/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ca/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ca/LC_MESSAGES/django.mo index 76b3dd3430f..6ea8297b5f4 100644 Binary files a/ecommerce/conf/locale/ca/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ca/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ca/LC_MESSAGES/django.po b/ecommerce/conf/locale/ca/LC_MESSAGES/django.po index 7d918ffa1f4..51748201759 100644 --- a/ecommerce/conf/locale/ca/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ca/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Elies Martos Robles , 2018\n" -"Language-Team: Catalan (http://www.transifex.com/open-edx/edx-platform/language/ca/)\n" +"Language-Team: Catalan (http://app.transifex.com/open-edx/edx-platform/language/ca/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ca/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ca/LC_MESSAGES/djangojs.mo index 6b5e729b8fc..418bb660b01 100644 Binary files a/ecommerce/conf/locale/ca/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ca/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ca/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ca/LC_MESSAGES/djangojs.po index fa3cfa6e3ab..bd97be86cf6 100644 --- a/ecommerce/conf/locale/ca/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ca/LC_MESSAGES/djangojs.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Muhammad Ayub khan , 2018\n" -"Language-Team: Catalan (http://www.transifex.com/open-edx/edx-platform/language/ca/)\n" +"Language-Team: Catalan (http://app.transifex.com/open-edx/edx-platform/language/ca/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,11 +317,11 @@ msgstr "Codi d'inscripció" msgid "Discount Code" msgstr "Codi de descompte" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Guardar canvis" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Crear Cupó" @@ -463,7 +463,7 @@ msgstr "Tipus de seients" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ca_ES/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ca_ES/LC_MESSAGES/django.mo index 14c551856b6..d253c85676f 100644 Binary files a/ecommerce/conf/locale/ca_ES/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ca_ES/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ca_ES/LC_MESSAGES/django.po b/ecommerce/conf/locale/ca_ES/LC_MESSAGES/django.po index 48a17a651cc..b397ad5d57f 100644 --- a/ecommerce/conf/locale/ca_ES/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ca_ES/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Ma. Teresa Guix , 2021\n" -"Language-Team: Catalan (Spain) (http://www.transifex.com/open-edx/edx-platform/language/ca_ES/)\n" +"Language-Team: Catalan (Spain) (http://app.transifex.com/open-edx/edx-platform/language/ca_ES/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ca_ES/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ca_ES/LC_MESSAGES/djangojs.mo index 34ac1dd1f34..8267f99ef87 100644 Binary files a/ecommerce/conf/locale/ca_ES/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ca_ES/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ca_ES/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ca_ES/LC_MESSAGES/djangojs.po index 3f4299ba1da..8be31bea0cc 100644 --- a/ecommerce/conf/locale/ca_ES/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ca_ES/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Catalan (Spain) (http://www.transifex.com/open-edx/edx-platform/language/ca_ES/)\n" +"Language-Team: Catalan (Spain) (http://app.transifex.com/open-edx/edx-platform/language/ca_ES/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/cmn/LC_MESSAGES/django.mo b/ecommerce/conf/locale/cmn/LC_MESSAGES/django.mo index 0839793e9e2..dd4e3c6915a 100644 Binary files a/ecommerce/conf/locale/cmn/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/cmn/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/cmn/LC_MESSAGES/django.po b/ecommerce/conf/locale/cmn/LC_MESSAGES/django.po index 29d277ac861..3fb4908eb93 100644 --- a/ecommerce/conf/locale/cmn/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/cmn/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Chinese (Mandarin) (http://www.transifex.com/open-edx/edx-platform/language/cmn/)\n" +"Language-Team: Chinese (Mandarin) (http://app.transifex.com/open-edx/edx-platform/language/cmn/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/cmn/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/cmn/LC_MESSAGES/djangojs.mo index b4e3694bc29..6b16fdbd2b6 100644 Binary files a/ecommerce/conf/locale/cmn/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/cmn/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/cmn/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/cmn/LC_MESSAGES/djangojs.po index 93765ac0f16..def9da7c2f4 100644 --- a/ecommerce/conf/locale/cmn/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/cmn/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Chinese (Mandarin) (http://www.transifex.com/open-edx/edx-platform/language/cmn/)\n" +"Language-Team: Chinese (Mandarin) (http://app.transifex.com/open-edx/edx-platform/language/cmn/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/cs/LC_MESSAGES/django.mo b/ecommerce/conf/locale/cs/LC_MESSAGES/django.mo index 49787ca65a6..cf34578563b 100644 Binary files a/ecommerce/conf/locale/cs/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/cs/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/cs/LC_MESSAGES/django.po b/ecommerce/conf/locale/cs/LC_MESSAGES/django.po index 6c12896b7d2..cd25c298245 100644 --- a/ecommerce/conf/locale/cs/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/cs/LC_MESSAGES/django.po @@ -9,16 +9,18 @@ # Translators: # Translators: # Translators: -# trendspotter , 2022 +# Aleš Fiala , 2022-2023 +# Jiří Podhorecký, 2023 +# Jiří Podhorecký, 2022 # Michal Ringer, 2020 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-21 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: trendspotter , 2022\n" -"Language-Team: Czech (http://www.transifex.com/open-edx/edx-platform/language/cs/)\n" +"Last-Translator: Jiří Podhorecký, 2023\n" +"Language-Team: Czech (http://app.transifex.com/open-edx/edx-platform/language/cs/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,15 +29,15 @@ msgstr "" #: ecommerce/core/admin.py:25 msgid "Personal info" -msgstr "" +msgstr "Osobní údaje" #: ecommerce/core/admin.py:26 msgid "Permissions" -msgstr "" +msgstr "Povolení" #: ecommerce/core/admin.py:28 msgid "Important dates" -msgstr "" +msgstr "Důležitá data" #. Translators: "Waffle" is the name of a third-party library. It should not #. be translated @@ -45,388 +47,388 @@ msgid "" "User administration has been disabled due to the load on the database. This " "functionality can be restored by activating the {switch_name} Waffle switch." " Be careful when re-activating this switch!" -msgstr "" +msgstr "Správa uživatelů byla zakázána z důvodu zatížení databáze. Tuto funkci lze obnovit aktivací přepínače {switch_name} Waffle. Při opětovné aktivaci tohoto spínače buďte opatrní!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" -msgstr "" +msgstr "Základní adresa URL LMS pro vlastní web/mikrosíť" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" -msgstr "" +msgstr "Kořenová adresa LMS tohoto webu (např. https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" -msgstr "" +msgstr "Cesta k vlastnímu motivu webu" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" -msgstr "" +msgstr "Zpracovatelé plateb" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" -msgstr "" +msgstr "Seznam názvů procesorů oddělených čárkami: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" -msgstr "" +msgstr "Zpracovatel plateb na straně klienta" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" -msgstr "" +msgstr "Procesor, který bude použit pro platby na straně klienta" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" -msgstr "" +msgstr "Nastavení OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." -msgstr "" +msgstr "Řetězec JSON obsahující nastavení backendu OAuth." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" -msgstr "" +msgstr "Klíč segmentu" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." -msgstr "" +msgstr "Zápis segmentu/klíč API." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" -msgstr "" +msgstr "Z e-mailu" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." -msgstr "" +msgstr "Adresa, ze které se odesílají e-maily." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" -msgstr "" +msgstr "Povolit registrační kódy" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." -msgstr "" +msgstr "Povolit vytváření registračních kódů." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" -msgstr "" +msgstr "E-mail na podporu plateb" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." -msgstr "" +msgstr "V případě problémů s podporou plateb kontaktujte e-mail." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" -msgstr "" +msgstr "URL podpory plateb" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." -msgstr "" +msgstr "Adresa URL pro problémy s podporou plateb." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" -msgstr "" +msgstr "Název souboru cookie UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." -msgstr "" +msgstr "Název souboru cookie ukládající data UTM." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" -msgstr "" +msgstr "Název affiliate cookie" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." -msgstr "" +msgstr "Název souboru cookie ukládající údaje o přidružených společnostech." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" -msgstr "" +msgstr "Odeslat upozornění na vrácení peněz e-mailem" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" -msgstr "" +msgstr "Povolit kontrolu SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." -msgstr "" +msgstr "Povolit kontrolu SDN při placení." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" -msgstr "" +msgstr "[Deprecated] URL API SDN ministerstva financí USA" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" -msgstr "" +msgstr "[Deprecated] Klíč API SDN ministerstva financí USA" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" -msgstr "" +msgstr "Seznamy SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." -msgstr "" +msgstr "Čárkami oddělený seznam seznamů ministerstva financí OFAC ke kontrole." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" -msgstr "" +msgstr "Vyžadovat aktivaci účtu" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." -msgstr "" +msgstr "Vyžadujte od uživatelů, aby si aktivovali svůj účet, než jim umožníte uplatnit kupón." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" -msgstr "" +msgstr "Zdrojová adresa URL fragmentu Optimalizace" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." -msgstr "" +msgstr "Tento skript bude načten na každé stránce." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" -msgstr "" +msgstr "Základní doména cookie" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." -msgstr "" +msgstr "Základní doména souborů cookie používaná ke sdílení souborů cookie mezi službami." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" -msgstr "" +msgstr "Povolit kontrolu embarga" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." -msgstr "" +msgstr "Povolit kontrolu embarga u pokladny." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" -msgstr "" +msgstr "Discovery API URL" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" -msgstr "" +msgstr "Povolit Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" -msgstr "" +msgstr "Povolit částečnou programovou nabídku" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" -msgstr "" +msgstr "Povolit aplikaci nabídek programu na zbývající nezapsané nebo neověřené kurzy" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" -msgstr "" +msgstr "Tajný klíč portálu Hubspot" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" -msgstr "" +msgstr "Tajný klíč pro ověřování portálu Hubspot" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" -msgstr "" +msgstr "Povolit Microfrontend pro stránku košíku" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" -msgstr "" +msgstr "Místo šablony na straně serveru použijte implementaci mikrofrontendu stránky košíku" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" -msgstr "" +msgstr "Adresa URL platebního mikrofrontendu" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" -msgstr "" +msgstr "Adresa URL pro platební mikrofrontend (používá se, pokud je nastavena možnost Povolit mikrofrontend pro stránku košíku)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" -msgstr "" +msgstr "příjmení" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" -msgstr "" +msgstr "jméno" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" -msgstr "" +msgstr "Celé jméno" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" -msgstr "" +msgstr "ID uživatele LMS" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" -msgstr "" +msgstr "Jméno" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" -msgstr "" +msgstr "EnterpriseCustomer UUID" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." -msgstr "" +msgstr "UUID pro EnterpriseCustomer z Enterprise Service." -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." -msgstr "" +msgstr "Kupón neexistuje." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." -msgstr "" +msgstr "Tento kód kupónu ještě není platný." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." -msgstr "" +msgstr "Platnost tohoto kódu kupónu vypršela." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." -msgstr "" +msgstr "Produkt [{product}] nelze zakoupit." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." -msgstr "" +msgstr "Tento kód kupónu již není dostupný." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." -msgstr "" +msgstr "Tento kód kupónu je neplatný." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." -msgstr "" +msgstr "Poukaz nelze uplatnit na váš aktuální košík." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" -msgstr "" +msgstr "Vítejte v edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." -msgstr "" +msgstr "Chcete-li se začít učit, vyberte si z kurzů vybraných vaší organizací." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." -msgstr "" +msgstr "Kód nebyl poskytnut." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." -msgstr "" +msgstr "SKU není poskytnuto." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." -msgstr "" +msgstr "Produkt neexistuje." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." -msgstr "" +msgstr "Tento kupón nemůžete použít." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." -msgstr "" +msgstr "Pro tento kupón nebyl nalezen odpovídající podnikový zákazník." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." -msgstr "" +msgstr "Tento kupón neplatí pro nákup programu. Zkuste to použít na individuálním kurzu v programu. Pokud potřebujete pomoc, kontaktujte podporu edX." -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." -msgstr "" +msgstr "Nebyl poskytnut platný token souhlasu se sdílením dat." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." -msgstr "" +msgstr "Již jste si zakoupili místo {course}." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." -msgstr "" +msgstr "Byla uplatněna sleva s laskavým svolením {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." -msgstr "" +msgstr "Tento kód kupónu není platný pro tento kurz. Zkuste jiný kurz." #: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" -msgstr "" +msgstr "Stránka" #: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." -msgstr "" +msgstr "Konečné datum/čas, kdy může být odesláno ověření pro tento produkt." #: ecommerce/courses/publishers.py:62 #, python-brace-format msgid "Failed to publish commerce data for {course_id} to LMS." -msgstr "" +msgstr "Nepodařilo se publikovat obchodní data pro {course_id} do LMS." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" -msgstr "" +msgstr "Audit" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" -msgstr "" +msgstr "Zápočet" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" -msgstr "" +msgstr "Čestný" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" -msgstr "" +msgstr "Profesionální" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" -msgstr "" +msgstr "Verifikovaný" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" -msgstr "" +msgstr "Vzdělávání manažerů" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" -msgstr "" +msgstr "Placené manažerské vzdělávání" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" -msgstr "" +msgstr "Neplacené manažerské vzdělávání" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" -msgstr "" +msgstr "Placený bootcamp" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" -msgstr "" +msgstr "Neplacený Bootcamp" #: ecommerce/credit/views.py:40 msgid "" "An error has occurred. We could not confirm that you are eligible for course" " credit. Try the transaction again." -msgstr "" +msgstr "Došlo k chybě. Nepodařilo se nám potvrdit, že máte nárok na zápočet z kurzu. Zkuste transakci znovu." #: ecommerce/credit/views.py:61 #, python-brace-format @@ -435,35 +437,35 @@ msgid "" "currently enrolled in the course, please try again after all grading is " "complete. If you need additional assistance, please contact the {site_name} " "Support Team." -msgstr "" +msgstr "Zápočet pro „{course_name}“ momentálně není k dispozici. Pokud jste aktuálně zapsáni do kurzu, zkuste to prosím znovu po dokončení všech hodnocení. Pokud potřebujete další pomoc, kontaktujte tým podpory {site_name}." #: ecommerce/credit/views.py:75 msgid "" "An error has occurred. We could not confirm that the institution you " "selected offers this course credit. Try the transaction again." -msgstr "" +msgstr "Došlo k chybě. Nepodařilo se nám potvrdit, že instituce, kterou jste vybrali, nabízí tento zápočet. Zkuste transakci znovu." #: ecommerce/enterprise/benefits.py:24 #, python-format msgid "%d%% enterprise discount" -msgstr "" +msgstr "%d%% podniková sleva" #: ecommerce/enterprise/benefits.py:36 #, python-brace-format msgid "{value} fixed-price enterprise discount" -msgstr "" +msgstr "{value} podniková sleva s pevnou cenou" #: ecommerce/enterprise/benefits.py:45 #: ecommerce/extensions/payment/models.py:86 ecommerce/invoice/models.py:25 #: ecommerce/programs/constants.py:15 msgid "Percentage" -msgstr "" +msgstr "Procento" #: ecommerce/enterprise/benefits.py:46 #: ecommerce/extensions/payment/models.py:87 #: ecommerce/programs/constants.py:16 msgid "Absolute" -msgstr "" +msgstr "Absolutní" #: ecommerce/enterprise/conditions.py:216 #, python-brace-format @@ -471,184 +473,194 @@ msgid "" "This coupon has been made available through {new_enterprise}. To redeem this" " coupon, you must first logout. When you log back in, please select " "{new_enterprise} as your enterprise and try again." -msgstr "" +msgstr "Tento kupón byl zpřístupněn prostřednictvím {new_enterprise}. Chcete-li tento kupón uplatnit, musíte se nejprve odhlásit. Až se znovu přihlásíte, vyberte jako podnik {new_enterprise} a zkuste to znovu." #: ecommerce/enterprise/conditions.py:370 msgid "" "This code is not valid with your email. Please login with the correct email " "assigned to the code or contact your Learning Manager for additional " "questions." -msgstr "" +msgstr "Tento kód není platný s vaším e-mailem. Přihlaste se prosím správným e-mailem přiřazeným ke kódu nebo se s dalšími dotazy obraťte na svého manažera výuky." -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" -msgstr "" +msgstr "UUID podnikového zákazníka" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" -msgstr "" +msgstr "UUID katalogu podnikových zákazníků" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" -msgstr "" +msgstr "Typ slevy" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" -msgstr "" +msgstr "Hodnota slevy" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" -msgstr "" +msgstr "Typ smluvní slevy" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" -msgstr "" +msgstr "Smluvní sleva" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" -msgstr "" +msgstr "Předplacená částka faktury" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" +msgstr "Salesforce Opportunity ID" + +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" -msgstr "" +msgstr "E-mailové adresy" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" -msgstr "" +msgstr "E-maily oddělené čárkami, které budou dostávat upozornění na využití nabídky" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" -msgstr "" +msgstr "Frekvence e-mailů o využití nabídky" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." -msgstr "" +msgstr "Maximální počet zápisů, které mohou tuto nabídku uplatnit." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." -msgstr "" +msgstr "Maximální částka v USD, kterou lze v rámci této nabídky uplatnit." -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." -msgstr "" +msgstr "Maximální počet zápisů uživatelem, který může tuto nabídku uplatnit." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." -msgstr "" +msgstr "Maximální částka v USD, kterou může uživatel pomocí této nabídky uplatnit." -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" -msgstr "" +msgstr "Počáteční datum" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" -msgstr "" +msgstr "Datum ukončení" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" -msgstr "" +msgstr "Limit zápisu" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" -msgstr "" +msgstr "Limit rezervací" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" -msgstr "" +msgstr "Limit pro zápis na uživatele" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" -msgstr "" +msgstr "Limit rezervací na uživatele" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." -msgstr "" +msgstr "Ujistěte se, že nová hodnota musí být větší nebo rovna spotřebované ({offer_enrollments}) hodnotě." -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." +msgstr "ID příležitosti Salesforce musí mít 18 alfanumerických znaků a začínat 006." + +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." -msgstr "" +msgstr "Ujistěte se, že tato hodnota je větší nebo rovna 0." -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." -msgstr "" +msgstr "Ujistěte se, že nová hodnota musí být větší nebo rovna spotřebované hodnotě ({consumed_discount:.2f})." -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." -msgstr "" +msgstr "Daná e-mailová adresa {email} není platná." -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." -msgstr "" +msgstr "Nabídka pro tuto kombinaci Enterprise & Catalog již existuje." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." -msgstr "" +msgstr "Procentní slevy nesmí být větší než 100 %." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." -msgstr "" +msgstr "Při zadávání data ukončení je nutné zadat počáteční datum." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." -msgstr "" +msgstr "Datum zahájení musí předcházet datu ukončení." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." -msgstr "" +msgstr "Více než 2 číslice za desetinnou čárkou není povoleno pro absolutní hodnotu." -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." -msgstr "" +msgstr "Toto pole je povinné, pokud je typ smluvní slevy absolutní." -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." -msgstr "" +msgstr "Sleva typu {} poskytnutá od {} za {}." #: ecommerce/enterprise/templates/enterprise/enterprise_coupon_app.html:5 msgid "Enterprise Coupon Codes" -msgstr "" +msgstr "Kódy podnikových kupónů" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:9 #, python-format msgid "Edit Enterprise Offer: %(enterprise_customer_name)s" -msgstr "" +msgstr "Upravit podnikovou nabídku: %(enterprise_customer_name)s" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:14 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:47 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:60 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:20 msgid "Create Enterprise Offer" -msgstr "" +msgstr "Vytvořit podnikovou nabídku" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:30 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:6 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:17 #: ecommerce/templates/edx/partials/_administration_menu.html:14 msgid "Enterprise Offers" -msgstr "" +msgstr "Podnikové nabídky" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:34 #: ecommerce/programs/templates/programs/programoffer_form.html:34 @@ -664,28 +676,28 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/offers/summary.html:30 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:695 msgid "Edit" -msgstr "" +msgstr "Upravit" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:36 #: ecommerce/programs/templates/programs/programoffer_form.html:36 msgid "Create" -msgstr "" +msgstr "Vytvořit" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:45 msgid "Edit Enterprise Offer" -msgstr "" +msgstr "Upravit podnikovou nabídku" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:58 #: ecommerce/programs/templates/programs/programoffer_form.html:58 msgid "Save Changes" -msgstr "" +msgstr "Uložit změny" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:62 #: ecommerce/programs/templates/programs/programoffer_form.html:62 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:323 #: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:20 msgid "Cancel" -msgstr "" +msgstr "Zrušit" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:76 #, python-format @@ -693,37 +705,37 @@ msgid "" "\n" " %(platform_name)s Enterprise Offer Administration Tool\n" " " -msgstr "" +msgstr "\n%(platform_name)s Nástroj pro správu podnikových nabídek" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:26 msgid "Current enterprise offers" -msgstr "" +msgstr "Aktuální podnikové nabídky" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:29 msgid "Enterprise Customer Name" -msgstr "" +msgstr "Jméno podnikového zákazníka" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:32 #: ecommerce/programs/templates/programs/programoffer_list.html:31 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:629 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:681 msgid "Type" -msgstr "" +msgstr "Typ" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:33 #: ecommerce/programs/templates/programs/programoffer_list.html:32 msgid "Value" -msgstr "" +msgstr "Hodnota" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:34 #: ecommerce/programs/templates/programs/programoffer_list.html:33 msgid "Start" -msgstr "" +msgstr "Začít" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:35 #: ecommerce/programs/templates/programs/programoffer_list.html:34 msgid "End" -msgstr "" +msgstr "Skončit" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:64 #, python-format @@ -731,258 +743,259 @@ msgid "" "\n" " %(platform_name)s Enterprise Offer Administration Tool\n" " " -msgstr "" +msgstr "\n %(platform_name)s Nástroj pro správu podnikových nabídek\n " #: ecommerce/enterprise/utils.py:239 #, python-brace-format msgid "SKU {sku} does not exist." -msgstr "" +msgstr "SKU {sku} neexistuje." #: ecommerce/enterprise/utils.py:248 #, python-brace-format msgid "There is no Enterprise Customer associated with SKU {sku}." -msgstr "" +msgstr "K SKU {sku} není přidružen žádný podnikový zákazník." #: ecommerce/enterprise/utils.py:256 #, python-brace-format msgid "" "If you have concerns about sharing your data, please contact your " "administrator at {enterprise}." -msgstr "" +msgstr "Máte-li obavy ohledně sdílení svých dat, kontaktujte svého administrátora na čísle {enterprise}." #: ecommerce/enterprise/utils.py:259 #, python-brace-format msgid "" "If you have concerns about sharing your data, please contact your " "administrator at {enterprise} at {contact_info}." -msgstr "" +msgstr "Máte-li obavy ohledně sdílení svých dat, kontaktujte svého administrátora na čísle {enterprise} na adrese {contact_info}." #: ecommerce/enterprise/utils.py:265 #, python-brace-format msgid "Enrollment in {course_name} was not complete." -msgstr "" +msgstr "Registrace do {course_name} nebyla dokončena." #: ecommerce/enterprise/views.py:39 msgid "Enterprise offer updated!" -msgstr "" +msgstr "Podniková nabídka aktualizována!" #: ecommerce/enterprise/views.py:62 msgid "Enterprise offer created!" -msgstr "" +msgstr "Podniková nabídka vytvořena!" #: ecommerce/extensions/api/exceptions.py:9 msgid "You can't check out with an empty basket." -msgstr "" +msgstr "Nemůžete se odhlásit s prázdným košíkem." #: ecommerce/extensions/api/exceptions.py:12 msgid "" "We couldn't locate the identification code necessary to find one of your " "products." -msgstr "" +msgstr "Nepodařilo se nám najít identifikační kód potřebný k nalezení jednoho z vašich produktů." #: ecommerce/extensions/api/exceptions.py:15 msgid "We couldn't find one of the products you're looking for." -msgstr "" +msgstr "Nenašli jsme jeden z produktů, které hledáte." #: ecommerce/extensions/api/exceptions.py:18 msgid "One of the products you're trying to order is unavailable." -msgstr "" +msgstr "Jeden z produktů, které se pokoušíte objednat, je nedostupný." #: ecommerce/extensions/api/exceptions.py:21 msgid "" "We couldn't find enough information about you to perform the calculation." -msgstr "" +msgstr "K provedení výpočtu jsme o vás nenašli dostatek informací." -#: ecommerce/extensions/api/serializers.py:256 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" -msgstr "" +msgstr "VYPRŠELO" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" -msgstr "" +msgstr "NEAKTIVNÍ" -#: ecommerce/extensions/api/serializers.py:259 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" -msgstr "" +msgstr "AKTIVNÍ" -#: ecommerce/extensions/api/serializers.py:693 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." -msgstr "" +msgstr "Produkty musí mít typ certifikátu." -#: ecommerce/extensions/api/serializers.py:696 -#: ecommerce/extensions/api/serializers.py:739 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." -msgstr "" +msgstr "Produkty musí mít cenu." -#: ecommerce/extensions/api/serializers.py:703 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." -msgstr "" +msgstr "Chcete-li vytvořit oprávnění ke kurzu, musíte zadat UUID kurzu." -#: ecommerce/extensions/api/serializers.py:735 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." -msgstr "" +msgstr "Produkty musí uvádět, zda je vyžadováno ověření ID." -#: ecommerce/extensions/api/serializers.py:806 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." -msgstr "" +msgstr "Byla požadována neplatná třída produktu [{product_class}]." -#: ecommerce/extensions/api/serializers.py:838 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " "[publish_course_modes_to_lms] is disabled. To avoid ghost SKUs, data has not" " been saved." -msgstr "" +msgstr "Kurz [{course_id}] nebyl publikován do LMS, protože je deaktivován přepínač [publish_course_modes_to_lms]. Aby se předešlo falešným SKU, nebyla data uložena." -#: ecommerce/extensions/api/serializers.py:1508 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" -msgstr "" +msgstr "Přihlašovací kód" -#: ecommerce/extensions/api/serializers.py:1509 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" -msgstr "" +msgstr "Slevový kód" -#: ecommerce/extensions/api/serializers.py:1976 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." -msgstr "" +msgstr "Neplatné číslo objednávky nebo objednávka {} neexistuje." -#: ecommerce/extensions/api/serializers.py:2031 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" -msgstr "" +msgstr "Přiřazení nového kuponového poukazu se nezdařilo. Chyba: {}" -#: ecommerce/extensions/api/serializers.py:2049 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." -msgstr "" +msgstr "Za vaši objednávku {} nelze vrátit peníze, protože vrácení peněz za kupón '{}' není podporováno." -#: ecommerce/extensions/api/serializers.py:2080 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" -msgstr "" +msgstr "Nelze vytvořit nový poukaz pro objednávku: {}" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." -msgstr "" +msgstr "Nebyly poskytnuty žádné SKU." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." -msgstr "" +msgstr "Produkty se SKU [{skus}] neexistují." #: ecommerce/extensions/api/v2/views/baskets.py:467 msgid "Provide username or is_anonymous query param, but not both" -msgstr "" +msgstr "Zadejte uživatelské jméno nebo parametr dotazu is_anonymous, ale ne obojí" #: ecommerce/extensions/api/v2/views/products.py:54 #, python-brace-format msgid "Product API only supports {http_method} for {product_class} products." -msgstr "" +msgstr "Product API podporuje pouze {http_method} pro produkty {product_class}." #: ecommerce/extensions/api/v2/views/products.py:69 #, python-brace-format msgid "Missing or bad value for: [{name}]." -msgstr "" +msgstr "Chybějící nebo špatná hodnota pro: [{name}]." #: ecommerce/extensions/basket/models.py:119 #, python-brace-format msgid "{id} - {status} basket (owner: {owner}, lines: {num_lines})" -msgstr "" +msgstr "{id} – {status} košík (vlastník: {owner}, řádky: {num_lines})" #: ecommerce/extensions/basket/models.py:142 #: ecommerce/extensions/payment/models.py:28 #: ecommerce/templates/oscar/basket/basket.html:9 msgid "Basket" -msgstr "" +msgstr "Košík" #: ecommerce/extensions/basket/models.py:144 msgid "Attribute Type" -msgstr "" +msgstr "Typ atributu" #: ecommerce/extensions/basket/models.py:146 msgid "Text Attribute" -msgstr "" +msgstr "Textový atribut" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." -msgstr "" +msgstr "Kvůli kontrole exportu vám v tuto chvíli nemůžeme umožnit přístup k tomuto kurzu." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" -msgstr "" +msgstr "Kliknutím sem si zakoupíte registraci pro sebe" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" -msgstr "" +msgstr "Kliknutím sem zakoupíte více míst v tomto kurzu" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." -msgstr "" +msgstr "Platnost kódu kupónu '{code}' vypršela." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." -msgstr "" +msgstr "Kód kupónu '{code}' není aktivní." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" -msgstr "" +msgstr "Kód kupónu '{code}' není k dispozici. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." -msgstr "" +msgstr "Kód kupónu '{code}' není platný pro tento košík." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." -msgstr "" +msgstr "Kód kupónu '{code}' není platný pro tento košík pro nákup v balíčku." -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." -msgstr "" +msgstr "Kód kupónu '{code}' byl přidán do košíku." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." -msgstr "" +msgstr "Košík nesplňuje podmínky pro kód kupónu {code}." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." -msgstr "" +msgstr "Nelze použít kód '{code}'; vyžaduje souhlas se sdílením údajů." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." -msgstr "" +msgstr "Po dokončení objednávky si budete moci vybrat termíny kurzů z vašeho dashboardu." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." -msgstr "" +msgstr "Po dokončení objednávky budete automaticky zapsáni do ověřené stopy kurzu." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." -msgstr "" +msgstr "Po dokončení objednávky obdržíte zápočet na kurz." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." -msgstr "" +msgstr "Po dokončení objednávky budete automaticky zařazeni do kurzu." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,57 +1010,57 @@ msgid "" "final and not eligible for refunds.{li_end}{ul_end} {paragraph_start}You " "will receive an email at {user_email} with your enrollment code(s). " "{paragraph_end}" -msgstr "" +msgstr "{paragraph_start}Zakoupením souhlasíte vy a vaše organizace s následujícími podmínkami:{paragraph_end} {ul_start} {li_start}Každý kód je platný pro jeden kurz, na který se vztahuje, a lze jej použít pouze jednou.{li_end} {li_start}Zodpovídáte za distribuci kódů svým studentům ve vaší organizaci. {li_end} {li_start}Každý kód vyprší za jeden rok od data zakoupení nebo, pokud je to dříve, po uzavření kurzu.{li_end} {li_start}Pokud kurz není označen jako samoplátecký, měli byste před vypršením platnosti potvrdit, že je k dispozici běh kurzu. {li_end} {li_start}Kódy nesmíte dále prodávat třetím stranám.{li_end} {li_start}Všechny prodeje edX for Business jsou konečné a nelze je refundovat.{li_end}{ul_end} {paragraph_start}Na adresu {user_email} obdržíte e-mail s přihlašovacím kódem (kódy). {paragraph_end}" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " "you are purchasing a single code for someone else, please continue with " "checkout. However, if you are the learner {link_start}go back{link_end} to " "enroll directly.{paragraph_end}" -msgstr "" +msgstr "{strong_start}Nakupujete jen pro sebe?{strong_end}{paragraph_start}Pokud kupujete jeden kód pro někoho jiného, pokračujte prosím k pokladně. Pokud jste však student, {link_start}vraťte se{link_end} a přihlaste se přímo.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" -msgstr "" +msgstr "Tyto produkty jste již zakoupili" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." -msgstr "" +msgstr "Žádný produkt není k dispozici ke koupi." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" -msgstr "" +msgstr "množství úspěšně aktualizováno" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." -msgstr "" +msgstr "Váš košík se nepodařilo aktualizovat. Opravte prosím níže uvedené chyby ověření." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." -msgstr "" +msgstr "Již jste do košíku přidali kód kupónu '{code}'." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." -msgstr "" +msgstr "Kód kupónu '{code}' neexistuje." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" -msgstr "" +msgstr "Nebyl nalezen žádný kupón s ID '%s'" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." -msgstr "" +msgstr "Kód kupónu '%s' byl odstraněn z vašeho košíku." #: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." -msgstr "" +msgstr "Poslední datum/čas, kdy lze tento produkt zakoupit." #: ecommerce/extensions/dashboard/forms.py:9 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:48 @@ -1056,37 +1069,37 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:59 #: ecommerce/templates/oscar/dashboard/users/detail.html:40 msgid "Username" -msgstr "" +msgstr "Uživatelské jméno" #: ecommerce/extensions/dashboard/forms.py:10 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:73 #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:60 #: ecommerce/templates/oscar/dashboard/users/detail.html:48 msgid "Email" -msgstr "" +msgstr "Email" #: ecommerce/extensions/dashboard/orders/views.py:74 #, python-brace-format msgid "" "{link_start}Refund #{refund_id}{link_end} created! Click " "{link_start}here{link_end} to view it." -msgstr "" +msgstr "{link_start}Vrácení peněz #{refund_id}{link_end} vytvořeno! Chcete-li jej zobrazit, klikněte {link_start}sem{link_end}." #: ecommerce/extensions/dashboard/orders/views.py:78 msgid "" "A refund cannot be created for these lines. They may have already been " "refunded." -msgstr "" +msgstr "Pro tyto řádky nelze vytvořit náhradu. Možná již byly vráceny." #: ecommerce/extensions/dashboard/refunds/apps.py:13 msgid "Refunds Dashboard" -msgstr "" +msgstr "Panel refundací" #: ecommerce/extensions/dashboard/refunds/forms.py:15 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:9 #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:55 msgid "Refund ID" -msgstr "" +msgstr "ID pro vrácení peněz" #: ecommerce/extensions/dashboard/refunds/forms.py:16 #: ecommerce/extensions/refund/models.py:72 @@ -1105,61 +1118,75 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:58 #: ecommerce/templates/oscar/dashboard/users/detail.html:142 msgid "Status" -msgstr "" +msgstr "Stav" #: ecommerce/extensions/dashboard/users/views.py:48 msgid "Failed to retrieve enrollment data." -msgstr "" +msgstr "Nepodařilo se načíst data zápisu." + +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "Počet opakování neúspěšných akcí klienta IAP (např. vytvoření platby, provedení platby)" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "Poslední počet dní pro načtení refundací pro Android." + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "Původní ID transakce" #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" -msgstr "" +msgstr "Den 3" #: ecommerce/extensions/offer/constants.py:33 msgid "Day 10" -msgstr "" +msgstr "Den 10" #: ecommerce/extensions/offer/constants.py:34 msgid "Day 19" -msgstr "" +msgstr "Den 19" #: ecommerce/extensions/offer/constants.py:40 msgid "Assign" -msgstr "" +msgstr "Přiřadit" #: ecommerce/extensions/offer/constants.py:41 msgid "Remind" -msgstr "" +msgstr "Připomenout" #: ecommerce/extensions/offer/constants.py:42 msgid "Revoke" -msgstr "" +msgstr "Zrušit" #: ecommerce/extensions/offer/constants.py:77 msgid "Automatic" -msgstr "" +msgstr "Automaticky" #: ecommerce/extensions/offer/constants.py:78 msgid "Manual" -msgstr "" +msgstr "Manuálně" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." -msgstr "" +msgstr "ID katalogu kurzů ze služby Discovery Service." -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." -msgstr "" +msgstr "UUID pro EnterpriseCustomerCatalog z Enterprise Service." -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" -msgstr "" +msgstr "Jméno EnterpriseCustomer" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" -msgstr "" +msgstr "EnterpriseCustomerCatalog UUID" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,49 +1195,49 @@ msgstr "" #: ecommerce/extensions/voucher/utils.py:341 ecommerce/programs/forms.py:22 #: ecommerce/programs/templates/programs/programoffer_list.html:30 msgid "Program UUID" -msgstr "" +msgstr "UUID programu" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." -msgstr "" +msgstr "E-mail uživateli čeká na vyřízení." -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." -msgstr "" +msgstr "Kód úspěšně přiřazen uživateli." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." -msgstr "" +msgstr "Kód byl uplatněn uživatelem." -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." -msgstr "" +msgstr "E-mail uživateli byl vrácen." -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." -msgstr "" +msgstr "Kód byl pro tohoto uživatele odvolán." -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." -msgstr "" +msgstr "Aktivujte konkrétní verzi šablony." -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." -msgstr "" +msgstr "E-mail byl odeslán." -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" -msgstr "" +msgstr "Tento uživatel by měl obdržet e-mail" #: ecommerce/extensions/offer/utils.py:97 #, python-brace-format msgid "{benefit_value}%" -msgstr "" +msgstr "{benefit_value} %" #: ecommerce/extensions/offer/utils.py:100 #, python-brace-format msgid "${benefit_value}" -msgstr "" +msgstr "${benefit_value}" #. Translators: "Waffle" is the name of a third-party library. It should not #. be translated @@ -1220,61 +1247,77 @@ msgid "" "Order administration has been disabled due to the load on the database. This" " functionality can be restored by activating the {switch_name} Waffle " "switch. Be careful when re-activating this switch!" -msgstr "" +msgstr "Správa objednávek byla deaktivována z důvodu zatížení databáze. Tuto funkci lze obnovit aktivací přepínače {switch_name} Waffle. Při opětovné aktivaci tohoto spínače buďte opatrní!" #: ecommerce/extensions/order/benefits.py:22 #, python-format msgid "%d%% discount for manual course enrollment order" -msgstr "" +msgstr "%d%% sleva za objednávku ručního zápisu do kurzu" #: ecommerce/extensions/order/models.py:39 #: ecommerce/extensions/payment/models.py:26 msgid "Payment Processor" -msgstr "" +msgstr "Zpracovatel plateb" #: ecommerce/extensions/order/models.py:51 msgid "" "It expect that the order numbers stuck in fulfillment error state will be" " provided in a txt file format one per line." -msgstr "" +msgstr "Očekává se, že čísla objednávek zaseknutá v chybovém stavu plnění budou poskytnuta ve formátu souboru txt jedno na řádek." #: ecommerce/extensions/partner/admin.py:28 msgid "Click 'Save and Continue Editing' to add stock records" -msgstr "" +msgstr "Chcete-li přidat skladové záznamy, klikněte na „Uložit a pokračovat v úpravách“." #: ecommerce/extensions/partner/models.py:22 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:193 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:74 msgid "Partner" -msgstr "" +msgstr "Partner" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:259 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" -msgstr "" +msgstr "Partneři" #: ecommerce/extensions/payment/constants.py:8 msgid "American Express" -msgstr "" +msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "Diners" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" -msgstr "" +msgstr "Discover" + +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "JCB" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" -msgstr "" +msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "UnionPay" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "Neznámé" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" -msgstr "" +msgstr "Visa" #: ecommerce/extensions/payment/exceptions.py:8 msgid "We don't support the payment option you selected." -msgstr "" +msgstr "Nepodporujeme vámi vybranou možnost platby." #: ecommerce/extensions/payment/forms.py:31 msgid "Choose country" -msgstr "" +msgstr "Vyber zemi" #. Translators: This is a string added next to the name of the required #. fields on the payment form. For example, the first name field is @@ -1282,108 +1325,108 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:105 #, python-brace-format msgid "{label} (required)" -msgstr "" +msgstr "{label} (povinné)" #: ecommerce/extensions/payment/forms.py:111 msgid "Organization (required)" -msgstr "" +msgstr "Organizace (povinné)" #: ecommerce/extensions/payment/forms.py:124 msgid "" "I am purchasing on behalf of my employer or other professional organization" -msgstr "" +msgstr "Nakupuji jménem svého zaměstnavatele nebo jiné profesní organizace" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." -msgstr "" +msgstr "Při načítání vašeho košíku došlo k problému. Obnovte stránku a zkuste to znovu." #: ecommerce/extensions/payment/forms.py:144 msgid "First Name (required)" -msgstr "" +msgstr "Křestní jméno (povinné)" #: ecommerce/extensions/payment/forms.py:145 msgid "Last Name (required)" -msgstr "" +msgstr "Příjmení (povinné)" #: ecommerce/extensions/payment/forms.py:146 msgid "Address (required)" -msgstr "" +msgstr "Adresa (povinné)" #: ecommerce/extensions/payment/forms.py:147 msgid "Suite/Apartment Number" -msgstr "" +msgstr "Číslo apartmá/apartmánu" #: ecommerce/extensions/payment/forms.py:148 msgid "City (required)" -msgstr "" +msgstr "Město (povinné)" #: ecommerce/extensions/payment/forms.py:151 msgid "State/Province" -msgstr "" +msgstr "Stát / provincie" #: ecommerce/extensions/payment/forms.py:152 msgid "Zip/Postal Code" -msgstr "" +msgstr "PSČ" #: ecommerce/extensions/payment/forms.py:153 msgid "Country (required)" -msgstr "" +msgstr "Země (povinné)" #: ecommerce/extensions/payment/forms.py:180 #: ecommerce/extensions/payment/forms.py:182 #: ecommerce/extensions/payment/forms.py:193 msgid "This field is required." -msgstr "" +msgstr "Toto pole je povinné." #: ecommerce/extensions/payment/forms.py:199 msgid "" "Postal codes for the U.S. and Canada are limited to nine (9) characters." -msgstr "" +msgstr "Poštovní směrovací čísla pro USA a Kanadu jsou omezena na devět (9) znaků." #: ecommerce/extensions/payment/models.py:27 msgid "Transaction ID" -msgstr "" +msgstr "ID transakce" #: ecommerce/extensions/payment/models.py:36 msgid "Payment Processor Response" -msgstr "" +msgstr "Odpověď zpracovatele plateb" #: ecommerce/extensions/payment/models.py:37 msgid "Payment Processor Responses" -msgstr "" +msgstr "Odpovědi zpracovatele plateb" #: ecommerce/extensions/payment/models.py:54 msgid "" "Number of times to retry failing Paypal client actions (e.g., payment " "creation, payment execution)" -msgstr "" +msgstr "Počet opakování neúspěšných akcí klienta Paypal (např. vytvoření platby, provedení platby)" #: ecommerce/extensions/payment/models.py:112 msgid "More than 10 digits before the decimal not allowed for fixed value." -msgstr "" +msgstr "Více než 10 číslic před desetinnou čárkou není povoleno pro pevnou hodnotu." #: ecommerce/extensions/payment/models.py:118 msgid "More than 2 digits after the decimal not allowed for fixed value." -msgstr "" +msgstr "Více než 2 číslice za desetinnou čárkou nejsou povoleny pro pevnou hodnotu." #: ecommerce/extensions/payment/models.py:126 msgid "Percentage greater than 100 not allowed." -msgstr "" +msgstr "Procento vyšší než 100 není povoleno." #. Translators: This is a string placed in the middle of a truncated string #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." -msgstr "" +msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" -msgstr "" +msgstr "transakce odmítnuta" #. Translators: "Waffle" is the name of a third-party library. It should not #. be translated @@ -1393,40 +1436,40 @@ msgid "" "Refund administration has been disabled due to the load on the database. " "This functionality can be restored by activating the {switch_name} Waffle " "switch. Be careful when re-activating this switch!" -msgstr "" +msgstr "Správa refundací byla deaktivována z důvodu zatížení databáze. Tuto funkci lze obnovit aktivací přepínače {switch_name} Waffle. Při opětovné aktivaci tohoto spínače buďte opatrní!" #: ecommerce/extensions/refund/models.py:67 msgid "Order" -msgstr "" +msgstr "Pořadí" #: ecommerce/extensions/refund/models.py:68 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:680 msgid "User" -msgstr "" +msgstr "Uživatel" #: ecommerce/extensions/refund/models.py:69 msgid "Total Credit (excl. tax)" -msgstr "" +msgstr "Celkový zápočet (bez daně)" #: ecommerce/extensions/refund/models.py:70 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:200 msgid "Currency" -msgstr "" +msgstr "Měna" #: ecommerce/extensions/refund/models.py:308 msgid "Refund" -msgstr "" +msgstr "Vrácení peněz" #: ecommerce/extensions/refund/models.py:311 msgid "Order Line" -msgstr "" +msgstr "Řádka objednávky" #: ecommerce/extensions/refund/models.py:313 msgid "Line Credit (excl. tax)" -msgstr "" +msgstr "Úvěrová linka (bez daně)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1437,63 +1480,63 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:138 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:108 msgid "Quantity" -msgstr "" +msgstr "Množství" #: ecommerce/extensions/voucher/models.py:40 msgid "Can be used once by one customer" -msgstr "" +msgstr "Může být použit jednou jedním zákazníkem" #: ecommerce/extensions/voucher/models.py:41 msgid "Can be used multiple times by multiple customers" -msgstr "" +msgstr "Může být použit vícekrát více zákazníky" #: ecommerce/extensions/voucher/models.py:42 msgid "Can only be used once per customer" -msgstr "" +msgstr "Lze použít pouze jednou na zákazníka" #: ecommerce/extensions/voucher/models.py:43 msgid "Can be used multiple times by one customer" -msgstr "" +msgstr "Může být použit vícekrát jedním zákazníkem" #: ecommerce/extensions/voucher/models.py:45 msgid "Usage" -msgstr "" +msgstr "Používání" #: ecommerce/extensions/voucher/models.py:48 msgid "Is Public Code Batch" -msgstr "" +msgstr "Je dávka veřejného kódu" #: ecommerce/extensions/voucher/models.py:49 msgid "Should this code batch be public or private for assignment." -msgstr "" +msgstr "Má být tato dávka kódu veřejná nebo soukromá pro přiřazení." #: ecommerce/extensions/voucher/models.py:63 msgid "This voucher is assigned to another user." -msgstr "" +msgstr "Tento voucher je přiřazen jinému uživateli." #: ecommerce/extensions/voucher/tests/test_utils.py:215 #: ecommerce/extensions/voucher/utils.py:76 #: ecommerce/extensions/voucher/utils.py:318 msgid "Redeemed" -msgstr "" +msgstr "Vykoupeno" #: ecommerce/extensions/voucher/tests/test_utils.py:379 #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 msgid "Discount" -msgstr "" +msgstr "Sleva" #: ecommerce/extensions/voucher/tests/test_utils.py:379 #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 msgid "Enrollment" -msgstr "" +msgstr "Zápis" #: ecommerce/extensions/voucher/tests/test_utils.py:380 #: ecommerce/extensions/voucher/tests/test_utils.py:388 @@ -1501,12 +1544,12 @@ msgstr "" #: ecommerce/extensions/voucher/utils.py:165 #, python-brace-format msgid "{percentage} %" -msgstr "" +msgstr "{percentage} %" #: ecommerce/extensions/voucher/tests/test_utils.py:544 #: ecommerce/extensions/voucher/utils.py:78 msgid "Inactive" -msgstr "" +msgstr "Neaktivní" #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:192 @@ -1515,91 +1558,91 @@ msgstr "" #: ecommerce/extensions/voucher/utils.py:332 #: ecommerce/extensions/voucher/utils.py:337 msgid "Catalog Query" -msgstr "" +msgstr "Katalogový dotaz" #: ecommerce/extensions/voucher/utils.py:55 #: ecommerce/extensions/voucher/utils.py:285 #: ecommerce/extensions/voucher/utils.py:340 msgid "Redeemed For Course IDs" -msgstr "" +msgstr "Uplatněno za ID kurzu" #: ecommerce/extensions/voucher/utils.py:57 #: ecommerce/extensions/voucher/utils.py:284 #: ecommerce/extensions/voucher/utils.py:331 #: ecommerce/extensions/voucher/utils.py:339 msgid "Redeemed For Course ID" -msgstr "" +msgstr "Uplatněno za ID kurzu" #: ecommerce/extensions/voucher/utils.py:76 #: ecommerce/templates/oscar/dashboard/users/detail.html:52 msgid "Active" -msgstr "" +msgstr "Aktivní" #: ecommerce/extensions/voucher/utils.py:171 #: ecommerce/extensions/voucher/utils.py:219 #: ecommerce/extensions/voucher/utils.py:263 msgid "Code" -msgstr "" +msgstr "Kód" #: ecommerce/extensions/voucher/utils.py:171 msgid "This row applies to all vouchers" -msgstr "" +msgstr "Tento řádek platí pro všechny vouchery" #: ecommerce/extensions/voucher/utils.py:172 #: ecommerce/extensions/voucher/utils.py:275 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:126 msgid "Category" -msgstr "" +msgstr "Kategorie" #: ecommerce/extensions/voucher/utils.py:173 #: ecommerce/extensions/voucher/utils.py:288 msgid "Coupon Expiry Date" -msgstr "" +msgstr "Datum vypršení platnosti kupónu" #: ecommerce/extensions/voucher/utils.py:174 #: ecommerce/extensions/voucher/utils.py:264 msgid "Coupon Name" -msgstr "" +msgstr "Název kupónu" #: ecommerce/extensions/voucher/utils.py:175 #: ecommerce/extensions/voucher/utils.py:287 msgid "Coupon Start Date" -msgstr "" +msgstr "Datum zahájení kupónu" #: ecommerce/extensions/voucher/utils.py:176 #: ecommerce/extensions/voucher/utils.py:267 msgid "Coupon Type" -msgstr "" +msgstr "Typ kupónu" #: ecommerce/extensions/voucher/utils.py:177 #: ecommerce/extensions/voucher/utils.py:286 msgid "Create Date" -msgstr "" +msgstr "Vytvořit datum" #: ecommerce/extensions/voucher/utils.py:178 #: ecommerce/extensions/voucher/utils.py:279 msgid "Discount Percentage" -msgstr "" +msgstr "Procento slevy" #: ecommerce/extensions/voucher/utils.py:179 #: ecommerce/extensions/voucher/utils.py:280 msgid "Discount Amount" -msgstr "" +msgstr "Výše slevy" #: ecommerce/extensions/voucher/utils.py:180 #: ecommerce/extensions/voucher/utils.py:289 msgid "Email Domains" -msgstr "" +msgstr "E-mailové domény" #: ecommerce/extensions/voucher/utils.py:181 #: ecommerce/extensions/voucher/utils.py:278 msgid "Invoiced Amount" -msgstr "" +msgstr "Fakturovaná částka" #: ecommerce/extensions/voucher/utils.py:182 #: ecommerce/extensions/voucher/utils.py:276 msgid "Note" -msgstr "" +msgstr "Poznámka" #: ecommerce/extensions/voucher/utils.py:183 #: ecommerce/extensions/voucher/utils.py:277 @@ -1607,7 +1650,7 @@ msgstr "" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:61 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:63 msgid "Price" -msgstr "" +msgstr "Cena" #: ecommerce/extensions/voucher/utils.py:187 #: ecommerce/extensions/voucher/utils.py:269 @@ -1615,154 +1658,154 @@ msgstr "" #: ecommerce/extensions/voucher/utils.py:333 #: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:8 msgid "Course ID" -msgstr "" +msgstr "ID kurzu" #: ecommerce/extensions/voucher/utils.py:188 #: ecommerce/extensions/voucher/utils.py:273 #: ecommerce/extensions/voucher/utils.py:328 #: ecommerce/extensions/voucher/utils.py:334 msgid "Organization" -msgstr "" +msgstr "Organizace" #: ecommerce/extensions/voucher/utils.py:193 #: ecommerce/extensions/voucher/utils.py:272 #: ecommerce/extensions/voucher/utils.py:330 #: ecommerce/extensions/voucher/utils.py:338 msgid "Course Seat Types" -msgstr "" +msgstr "Typy kurzů" #: ecommerce/extensions/voucher/utils.py:220 #: ecommerce/extensions/voucher/utils.py:265 #: ecommerce/extensions/voucher/utils.py:321 msgid "Maximum Coupon Usage" -msgstr "" +msgstr "Maximální využití kupónu" #: ecommerce/extensions/voucher/utils.py:221 #: ecommerce/extensions/voucher/utils.py:266 #: ecommerce/extensions/voucher/utils.py:322 msgid "Redemption Count" -msgstr "" +msgstr "Počet výkupů" #: ecommerce/extensions/voucher/utils.py:223 #: ecommerce/extensions/voucher/utils.py:268 msgid "URL" -msgstr "" +msgstr "URL" #: ecommerce/extensions/voucher/utils.py:274 #: ecommerce/extensions/voucher/utils.py:297 msgid "Client" -msgstr "" +msgstr "Klient" #: ecommerce/extensions/voucher/utils.py:282 #: ecommerce/extensions/voucher/utils.py:302 #: ecommerce/extensions/voucher/utils.py:319 #: ecommerce/templates/oscar/dashboard/users/detail.html:138 msgid "Order Number" -msgstr "" +msgstr "Číslo objednávky" #: ecommerce/extensions/voucher/utils.py:283 #: ecommerce/extensions/voucher/utils.py:302 #: ecommerce/extensions/voucher/utils.py:320 msgid "Redeemed By Username" -msgstr "" +msgstr "Uplatněno podle uživatelského jména" #: ecommerce/extensions/voucher/utils.py:785 #, python-brace-format msgid "Range for coupon [{coupon_id}]" -msgstr "" +msgstr "Rozsah pro kupón [{coupon_id}]" #: ecommerce/extensions/voucher/views.py:31 #, python-brace-format msgid "Coupon Report for {coupon_name}" -msgstr "" +msgstr "Přehled kupónů pro {coupon_name}" #: ecommerce/extensions/voucher/views.py:40 msgid "" "Failed to find a matching stock record for coupon, report download canceled." -msgstr "" +msgstr "Nepodařilo se najít odpovídající skladový záznam pro kupón, stahování přehledu bylo zrušeno." #: ecommerce/invoice/models.py:13 msgid "Not Paid" -msgstr "" +msgstr "Nezaplaceno" #: ecommerce/invoice/models.py:14 msgid "Paid" -msgstr "" +msgstr "Zaplaceno" #: ecommerce/invoice/models.py:18 msgid "Prepaid" -msgstr "" +msgstr "Předplaceno" #: ecommerce/invoice/models.py:19 msgid "Postpaid" -msgstr "" +msgstr "Zpětně placeno" #: ecommerce/invoice/models.py:20 msgid "Bulk purchase" -msgstr "" +msgstr "Hromadný nákup" #: ecommerce/invoice/models.py:21 msgid "Not applicable" -msgstr "" +msgstr "Nelze použít" #: ecommerce/invoice/models.py:26 msgid "Fixed" -msgstr "" +msgstr "Fixováno" #: ecommerce/management/templates/management/index.html:7 msgid "Management View" -msgstr "" +msgstr "Pohled pro správu" #: ecommerce/management/templates/management/index.html:26 msgid "Refund Transactions" -msgstr "" +msgstr "Transakce vrácení peněz" #: ecommerce/management/views.py:53 #, python-brace-format msgid "{action} is not a valid action." -msgstr "" +msgstr "{action} není platná akce." #: ecommerce/programs/benefits.py:27 #, python-brace-format msgid "{value}% program discount" -msgstr "" +msgstr "{value}% sleva na program" #: ecommerce/programs/benefits.py:44 #, python-brace-format msgid "{value} fixed-price program discount" -msgstr "" +msgstr "Sleva programu s pevnou cenou {value}" #: ecommerce/programs/forms.py:70 msgid "An offer already exists for this program." -msgstr "" +msgstr "Nabídka pro tento program již existuje." #: ecommerce/programs/forms.py:90 #, python-brace-format msgid "{current_date} Discount for the {program_title} {program_type} Program" -msgstr "" +msgstr "{current_date} Sleva pro program {program_title} {program_type}" #: ecommerce/programs/templates/programs/programoffer_form.html:9 #, python-format msgid "Edit Program Offer: %(program_title)s" -msgstr "" +msgstr "Upravit nabídku programu: %(program_title)s" #: ecommerce/programs/templates/programs/programoffer_form.html:14 #: ecommerce/programs/templates/programs/programoffer_form.html:47 #: ecommerce/programs/templates/programs/programoffer_form.html:60 #: ecommerce/programs/templates/programs/programoffer_list.html:20 msgid "Create Program Offer" -msgstr "" +msgstr "Vytvořit nabídku programu" #: ecommerce/programs/templates/programs/programoffer_form.html:30 #: ecommerce/programs/templates/programs/programoffer_list.html:6 #: ecommerce/programs/templates/programs/programoffer_list.html:17 #: ecommerce/templates/edx/partials/_administration_menu.html:11 msgid "Program Offers" -msgstr "" +msgstr "Nabídka programů" #: ecommerce/programs/templates/programs/programoffer_form.html:45 msgid "Edit Program Offer" -msgstr "" +msgstr "Upravit nabídku programu" #: ecommerce/programs/templates/programs/programoffer_form.html:76 #: ecommerce/programs/templates/programs/programoffer_list.html:60 @@ -1771,53 +1814,53 @@ msgid "" "\n" " %(platform_name)s Program Offer Administration Tool\n" " " -msgstr "" +msgstr "\n %(platform_name)s Nástroj pro správu nabídky programu\n " #: ecommerce/programs/templates/programs/programoffer_list.html:26 msgid "Current program offers" -msgstr "" +msgstr "Aktuální nabídka programů" #: ecommerce/programs/templates/programs/programoffer_list.html:29 msgid "Program Title" -msgstr "" +msgstr "Název programu" #: ecommerce/programs/views.py:38 msgid "Program offer updated!" -msgstr "" +msgstr "Nabídka programu aktualizována!" #: ecommerce/programs/views.py:61 msgid "Program offer created!" -msgstr "" +msgstr "Nabídka programu vytvořena!" #: ecommerce/referrals/models.py:26 msgid "Affiliate ID" -msgstr "" +msgstr "ID přidruženého subjektu" #: ecommerce/referrals/models.py:27 msgid "UTM Source" -msgstr "" +msgstr "Zdroj UTM" #: ecommerce/referrals/models.py:28 msgid "UTM Medium" -msgstr "" +msgstr "UTM střední" #: ecommerce/referrals/models.py:29 msgid "UTM Campaign" -msgstr "" +msgstr "UTM kampaň" #: ecommerce/referrals/models.py:30 msgid "UTM Term" -msgstr "" +msgstr "Termín UTM" #: ecommerce/referrals/models.py:31 msgid "UTM Content" -msgstr "" +msgstr "Obsah UTM" #: ecommerce/referrals/models.py:32 msgid "UTM Created At" -msgstr "" +msgstr "UTM vytvořeno v" -#: ecommerce/settings/_oscar.py:216 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,40 +1871,40 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:30 #: ecommerce/templates/oscar/dashboard/users/detail.html:20 msgid "Dashboard" -msgstr "" +msgstr "Nástěnka" -#: ecommerce/settings/_oscar.py:221 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" -msgstr "" +msgstr "Katalog" -#: ecommerce/settings/_oscar.py:225 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" -msgstr "" +msgstr "Produkty" -#: ecommerce/settings/_oscar.py:229 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" -msgstr "" +msgstr "Typy produktů" -#: ecommerce/settings/_oscar.py:233 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" -msgstr "" +msgstr "Kategorie" -#: ecommerce/settings/_oscar.py:237 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" -msgstr "" +msgstr "Rozsahy" -#: ecommerce/settings/_oscar.py:241 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" -msgstr "" +msgstr "Upozornění na nízké zásoby" -#: ecommerce/settings/_oscar.py:247 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" -msgstr "" +msgstr "Splnění" -#: ecommerce/settings/_oscar.py:251 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,13 +1914,13 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/users/detail.html:120 #: ecommerce/templates/oscar/dashboard/users/detail.html:134 msgid "Orders" -msgstr "" +msgstr "Objednávky" -#: ecommerce/settings/_oscar.py:255 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" -msgstr "" +msgstr "Statistika" -#: ecommerce/settings/_oscar.py:263 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,69 +1929,69 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:38 #: ecommerce/templates/oscar/dashboard/users/detail.html:121 msgid "Refunds" -msgstr "" +msgstr "Vrácení peněz" -#: ecommerce/settings/_oscar.py:269 ecommerce/settings/_oscar.py:273 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" -msgstr "" +msgstr "Zákazníci" -#: ecommerce/settings/_oscar.py:277 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" -msgstr "" +msgstr "Žádosti o upozornění na skladové zásoby" -#: ecommerce/settings/_oscar.py:283 ecommerce/settings/_oscar.py:287 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" -msgstr "" +msgstr "Nabídky" -#: ecommerce/settings/_oscar.py:291 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" -msgstr "" +msgstr "Poukazy" -#: ecommerce/settings/_oscar.py:297 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" -msgstr "" +msgstr "Hlášení" #: ecommerce/settings/base.py:93 msgid "English" -msgstr "" +msgstr "Angličtina" #: ecommerce/settings/base.py:94 msgid "Spanish" -msgstr "" +msgstr "Španělština" #: ecommerce/settings/base.py:95 msgid "Spanish (Latin American)" -msgstr "" +msgstr "Španělština (latinskoamerická)" #: ecommerce/templates/base.html:10 msgid "Build" -msgstr "" +msgstr "Sestavení" #: ecommerce/templates/base.html:71 msgid "Version:" -msgstr "" +msgstr "Verze:" #: ecommerce/templates/coupons/_offer_error.html:4 #: ecommerce/templates/coupons/offer.html:5 #: ecommerce/templates/edx/email_confirmation_required.html:4 msgid "Redeem" -msgstr "" +msgstr "Vykoupit" #: ecommerce/templates/coupons/coupon_app.html:5 msgid "Coupon Codes" -msgstr "" +msgstr "Kódy kupónů" #: ecommerce/templates/coupons/offer.html:18 msgid "" "Earn a verified certificate in one of our popular courses to advance your " "career, showcase your accomplishments or enhance your college application." -msgstr "" +msgstr "Získejte ověřený certifikát v jednom z našich oblíbených kurzů, abyste mohli pokročit ve své kariéře, předvést své úspěchy nebo zlepšit svou přihlášku na vysokou školu." #: ecommerce/templates/coupons/offer.html:22 msgid "Why buy a verified certificate?" -msgstr "" +msgstr "Proč kupovat ověřený certifikát?" #: ecommerce/templates/coupons/offer.html:27 msgid "" @@ -1957,25 +2000,25 @@ msgid "" "university's logo, as well as signatures from faculty members involved with " "the course. There is also a URL that can be used to verify the authenticity " "of the certificate." -msgstr "" +msgstr "Ověřený certifikát (digitální) potvrzující, že uživatel dokončil kurz v určený den. Certifikát obsahuje logo edX a logo univerzity, stejně jako podpisy členů fakulty zapojených do kurzu. Existuje také adresa URL, kterou lze použít k ověření pravosti certifikátu." #: ecommerce/templates/coupons/offer.html:30 msgid "" "A verified certificate demonstrates to future employers that you've mastered" " the course material." -msgstr "" +msgstr "Ověřený certifikát prokazuje budoucím zaměstnavatelům, že jste zvládli látku kurzu." #: ecommerce/templates/coupons/offer.html:32 msgid "" "The certificate is officially signed and stamped by the institution that " "offers the course." -msgstr "" +msgstr "Certifikát je oficiálně podepsán a orazítkován institucí, která kurz nabízí." #: ecommerce/templates/coupons/offer.html:34 msgid "" "You're twelve times more likely to complete the course if you're working " "toward a verified certificate." -msgstr "" +msgstr "Máte dvanáctkrát větší šanci, že kurz dokončíte, pokud usilujete o ověřený certifikát." #: ecommerce/templates/courses/course_app.html:5 #: ecommerce/templates/edx/partials/_administration_menu.html:5 @@ -1988,32 +2031,32 @@ msgid "" "\n" " %(platform_name)s Course Administration Tool\n" " " -msgstr "" +msgstr "\n%(platform_name)s Nástroj pro správu kurzu" #: ecommerce/templates/courses/menu_options.html:8 msgid "Student Dashboard" -msgstr "" +msgstr "Ovládací panel studenta" #: ecommerce/templates/courses/menu_options.html:11 msgid "Course Admin Tool" -msgstr "" +msgstr "Nástroj pro správu kurzu" #: ecommerce/templates/courses/menu_options.html:14 msgid "E-Commerce Dashboard" -msgstr "" +msgstr "Ovládací panel elektronického obchodu" #: ecommerce/templates/edx/base_menu.html:7 msgid "Sign Out" -msgstr "" +msgstr "Odhlásit se" #: ecommerce/templates/edx/checkout/receipt.html:13 #, python-format msgid "Receipt for %(order_number)s" -msgstr "" +msgstr "Potvrzení za %(order_number)s" #: ecommerce/templates/edx/checkout/receipt.html:43 msgid "Thank you for your order!" -msgstr "" +msgstr "Děkujeme za Vaši objednávku!" #: ecommerce/templates/edx/checkout/receipt.html:53 #, python-brace-format @@ -2021,91 +2064,100 @@ msgid "" "Your order is complete. You will receive a confirmation message and your " "enrollment code(s) at {link_start}{email}{link_end}. If you need a receipt, " "you can print this page." -msgstr "" +msgstr "Vaše objednávka je dokončena. Na adrese {link_start}{email}{link_end} obdržíte potvrzovací zprávu a své přihlašovací kód(y). Pokud potřebujete účtenku, můžete si tuto stránku vytisknout." + +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "Vaše objednávka je dokončena. Pokud potřebujete účtenku, můžete si tuto stránku vytisknout. {next_start} Další kroky:{next_end} 1. Zkontrolujte svou doručenou poštu, zda nemáte e-mail s potvrzením objednávky od služby Get Smarter.{next_line} 2: Dokončete registraci podle pokynů v e-mailu." -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." -msgstr "" +msgstr "Vaše objednávka je dokončena. Pokud potřebujete účtenku, můžete si tuto stránku vytisknout." -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" -msgstr "" +msgstr "Číslo objednávky:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" -msgstr "" +msgstr "Způsob platby:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" -msgstr "" +msgstr "Datum objednávky:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" -msgstr "" +msgstr "Informace o objednávce" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" -msgstr "" +msgstr "Popis" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" -msgstr "" +msgstr "Cena položky" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" -msgstr "" +msgstr "Množství:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" -msgstr "" +msgstr "Popis:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" -msgstr "" +msgstr "Cena položky:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" -msgstr "" +msgstr "Mezisoučet" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" -msgstr "" +msgstr "%(voucher_discount_amount)s sleva" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" -msgstr "" +msgstr "Sleva typu %(type)s poskytovaná od %(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" -msgstr "" +msgstr "Sleva na váš první upgrade" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." -msgstr "" +msgstr "Je poskytována sleva typu %(type)s." -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." -msgstr "" +msgstr "S laskavým svolením %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" -msgstr "" +msgstr "Celkem" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" -msgstr "" +msgstr "Získejte zápočet za kurz" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,30 +2165,30 @@ msgid "" "organization’s website on your " "{link_start}{lms_dashboard_url}{link_middle}dashboard{link_end}, next to the" " course name." -msgstr "" +msgstr "Chcete-li získat akademický zápočet za tento kurz, musíte požádat o zápočet u organizace, která zápočet nabízí. Odkaz na web organizace najdete na svém {link_start}{lms_dashboard_url}{link_middle}hlavním panelu{link_end} vedle názvu kurzu." -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" -msgstr "" +msgstr "Přejít na ovládací panel" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" -msgstr "" +msgstr "Najít další kurzy" #: ecommerce/templates/edx/checkout/receipt_not_found.html:7 msgid "Order Not Found" -msgstr "" +msgstr "Objednávka nenalezena" #: ecommerce/templates/edx/checkout/receipt_not_found.html:19 #, python-format msgid " %(error_summary)s " -msgstr "" +msgstr " %(error_summary)s " #: ecommerce/templates/edx/checkout/receipt_not_found.html:23 msgid "" "The specified order could not be located. Please ensure that the URL is " "correct, and try again." -msgstr "" +msgstr "Zadanou objednávku se nepodařilo najít. Ujistěte se, že je adresa URL správná, a zkuste to znovu." #: ecommerce/templates/edx/checkout/receipt_not_found.html:31 #, python-brace-format @@ -2145,19 +2197,19 @@ msgid "" " You may also view your previous orders on the {link_start}{order_history_url}{link_middle}{link_end}Account Settings{link_end}\n" " page.\n" " " -msgstr "" +msgstr "\nSvé předchozí objednávky si můžete prohlédnout také na {link_start}{order_history_url}{link_middle}{link_end}Nastavení účtu{link_end}." #: ecommerce/templates/edx/credit/_provider_detail.html:8 msgid "Select" -msgstr "" +msgstr "Vybrat" #: ecommerce/templates/edx/credit/_provider_detail.html:16 msgid "Credits: " -msgstr "" +msgstr "Zápočty: " #: ecommerce/templates/edx/credit/_provider_detail.html:17 msgid "Price: " -msgstr "" +msgstr "Cena: " #: ecommerce/templates/edx/credit/_provider_detail.html:27 #, python-format @@ -2165,7 +2217,7 @@ msgid "" "\n" " Learn more about %(display_name)s credit?\n" " " -msgstr "" +msgstr "\nDalší informace o zápočtu %(display_name)s?" #: ecommerce/templates/edx/credit/_provider_detail.html:47 #, python-format @@ -2173,12 +2225,12 @@ msgid "" "\n" " Credit available until %(date)s\n" " " -msgstr "" +msgstr "\nZápočet je k dispozici do %(date)s" #: ecommerce/templates/edx/credit/checkout.html:9 #, python-format msgid "Purchase Credit for %(course_name)s" -msgstr "" +msgstr "Nákup zápočtu za %(course_name)s" #: ecommerce/templates/edx/credit/checkout.html:27 #, python-format @@ -2186,7 +2238,7 @@ msgid "" "\n" " Purchase Credit for %(course_name)s\n" " " -msgstr "" +msgstr "\nNákup zápočtu za %(course_name)s" #: ecommerce/templates/edx/credit/checkout.html:34 #, python-format @@ -2196,54 +2248,54 @@ msgid "" " You must purchase your credit before %(date)s.\n" " Select one of the following institutions to purchase your credit.\n" " " -msgstr "" +msgstr "\nGratulujeme! Pro tento kurz máte nárok na zakoupení zápočtu za akademický kurz. Zápočet si musíte zakoupit před %(date)s. Pro nákup zápočtu vyberte jednu z následujících institucí." #: ecommerce/templates/edx/credit/checkout.html:51 msgid "Price:" -msgstr "" +msgstr "Cena:" #: ecommerce/templates/edx/credit/checkout.html:55 msgid "Discount:" -msgstr "" +msgstr "Sleva:" #: ecommerce/templates/edx/credit/checkout.html:60 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:127 msgid "Total:" -msgstr "" +msgstr "Celkem:" #: ecommerce/templates/edx/credit/checkout.html:89 msgid "You deserve it." -msgstr "" +msgstr "Vy si to zasloužíte." #: ecommerce/templates/edx/credit/checkout.html:92 msgid "" "The hard work is over - you passed the course! Now get the credit you " "deserve to start or complete a degree." -msgstr "" +msgstr "Tvrdá dřina je u konce – prošli jste kurzem! Nyní získejte zápočet, který si zasloužíte, abyste mohli začít nebo dokončit studium." #: ecommerce/templates/edx/credit/checkout.html:98 msgid "It's affordable." -msgstr "" +msgstr "Je to cenově dostupné." #: ecommerce/templates/edx/credit/checkout.html:101 msgid "" "The credit offered through edX generally costs less than the same credit at " "most institutions." -msgstr "" +msgstr "Zápočet nabízený prostřednictvím edX obecně stojí méně než stejný zápočet u většiny institucí." #: ecommerce/templates/edx/credit/checkout.html:107 msgid "It opens doors." -msgstr "" +msgstr "Otevírá dveře." #: ecommerce/templates/edx/credit/checkout.html:110 msgid "" "Many of today's most in-demand jobs require a college degree. Start your " "path to success!" -msgstr "" +msgstr "Mnoho dnešních nejžádanějších pracovních míst vyžaduje vysokoškolské vzdělání. Začněte svou cestu k úspěchu!" #: ecommerce/templates/edx/credit/checkout.html:118 msgid "Questions?" -msgstr "" +msgstr "Otázky?" #: ecommerce/templates/edx/credit/checkout.html:121 #, python-brace-format @@ -2251,73 +2303,73 @@ msgid "" "\n" " Please read {link_start}our FAQs to view common questions about our certificates.{link_end}\n" " " -msgstr "" +msgstr "\nPřečtěte si prosím {link_start}naše časté dotazy, kde najdete běžné dotazy k našim certifikátům.{link_end}" #: ecommerce/templates/edx/email_confirmation_required.html:16 msgid "You are enrolling in: " -msgstr "" +msgstr "Zapisujete se do:" #: ecommerce/templates/edx/email_confirmation_required.html:26 #, python-format msgid "" "An email has been sent to %(user_email)s with a link for you to activate " "your account." -msgstr "" +msgstr "Na adresu %(user_email)s byl odeslán e-mail s odkazem na aktivaci účtu." #: ecommerce/templates/edx/email_confirmation_required.html:29 msgid "Why activate?" -msgstr "" +msgstr "Proč aktivovat?" #: ecommerce/templates/edx/email_confirmation_required.html:31 msgid "" "We ask you to activate your account to ensure it is really you creating the " "account and to prevent fraud." -msgstr "" +msgstr "Žádáme vás, abyste aktivovali svůj účet, abychom se ujistili, že jste to skutečně vy, vytvořili účet a abyste zabránili podvodům." #: ecommerce/templates/edx/error.html:17 msgid "If you need assistance, contact edX support." -msgstr "" +msgstr "Pokud potřebujete pomoc, kontaktujte podporu edX." #: ecommerce/templates/edx/partials/_administration_menu.html:6 msgid "Coupons" -msgstr "" +msgstr "kupony" #: ecommerce/templates/edx/partials/_administration_menu.html:8 msgid "Enterprise Coupons" -msgstr "" +msgstr "Podnikové kupóny" #: ecommerce/templates/edx/partials/_base_navbar.html:10 msgid "Toggle navigation" -msgstr "" +msgstr "Přepnout navigaci" #: ecommerce/templates/edx/partials/_base_navbar.html:25 msgid "Dashboard for:" -msgstr "" +msgstr "Nástěnka:" #: ecommerce/templates/edx/partials/_base_navbar.html:32 msgid "Toggle Dropdown" -msgstr "" +msgstr "Přepnout rozbalovací nabídku" #: ecommerce/templates/edx/partials/_base_navbar.html:40 #: ecommerce/templates/edx/partials/_base_navbar.html:41 msgid "Login" -msgstr "" +msgstr "Přihlásit" #: ecommerce/templates/edx/partials/_staff_navbar.html:9 msgid "E-Commerce Course Administration" -msgstr "" +msgstr "Správa kurzu elektronického obchodu" #: ecommerce/templates/edx/partials/_staff_navbar.html:14 msgid "E-Commerce Coupon Administration" -msgstr "" +msgstr "Správa kupónů elektronického obchodu" #: ecommerce/templates/edx/partials/_staff_navbar.html:19 msgid "E-Commerce Program Offers Administration" -msgstr "" +msgstr "Správa nabídek programu elektronického obchodování" #: ecommerce/templates/oscar/basket/basket.html:48 msgid "Your basket is empty" -msgstr "" +msgstr "Váš košík je prázdný" #: ecommerce/templates/oscar/basket/basket.html:49 #, python-brace-format @@ -2326,11 +2378,11 @@ msgid "" " If you attempted to make a purchase, you have not been charged. Return to your {link_start}{link_middle}{homepage_url}dashboard{link_end} to try\n" " again, or {link_start}{homepage_url}{link_middle}contact {platform_name} Support{link_end}.\n" " " -msgstr "" +msgstr "\n Pokud jste se pokusili o nákup, nebudou vám účtovány žádné poplatky. Vraťte se na svůj {link_start}{link_middle}{homepage_url}hlavní panel{link_end} a zkuste to\n znovu, nebo {link_start}{homepage_url}{link_middle}kontaktujte podporu {platform_name}{link_end}.\n " #: ecommerce/templates/oscar/basket/messages/new_total.html:7 msgid "Your basket is now empty" -msgstr "" +msgstr "Váš košík je nyní prázdný" #: ecommerce/templates/oscar/basket/messages/new_total.html:10 #: ecommerce/templates/oscar/basket/messages/new_total.html:16 @@ -2340,50 +2392,50 @@ msgid "" " {strong_start}We’ve updated your quantity.{strong_end}\n" " {paragraph_start}Your cart includes {num_items} enrollment codes at a total cost of {total}, that you will receive via email.{paragraph_end}\n" " " -msgstr "" +msgstr "\n{strong_start}Aktualizovali jsme vaše množství.{strong_end}\n{paragraph_start}Váš košík obsahuje {num_items} zápisových kódů v celkové hodnotě {total}, které obdržíte e-mailem.{paragraph_end}" #: ecommerce/templates/oscar/basket/messages/new_total.html:27 msgid "View basket" -msgstr "" +msgstr "Zobrazit košík" #: ecommerce/templates/oscar/basket/messages/new_total.html:28 msgid "Checkout now" -msgstr "" +msgstr "Zkontrolovat teď" #: ecommerce/templates/oscar/basket/partials/add_voucher_form.html:11 msgid "Applying..." -msgstr "" +msgstr "Ukládání..." #: ecommerce/templates/oscar/basket/partials/add_voucher_form.html:16 msgid "Apply" -msgstr "" +msgstr "Použít" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:16 msgid "in your cart" -msgstr "" +msgstr "ve vašem košíku" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:17 msgid "Your purchase contains the following" -msgstr "" +msgstr "Váš nákup obsahuje následující" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:36 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:57 msgid "Updating..." -msgstr "" +msgstr "Aktualizace..." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:36 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:57 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:518 msgid "Update" -msgstr "" +msgstr "Aktualizovat" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:47 msgid "summary" -msgstr "" +msgstr "shrnutí" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:68 msgid "Discounts applied" -msgstr "" +msgstr "Uplatněny slevy" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:80 #, python-format @@ -2391,7 +2443,7 @@ msgid "" "\n" " %(benefit)s discount provided by %(enterprise_customer_name)s.\n" " " -msgstr "" +msgstr "\n%(benefit)s sleva poskytovaná %(enterprise_customer_name)s." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:87 #, python-format @@ -2399,7 +2451,7 @@ msgid "" "\n" " %(benefit)s%% discount for your first upgrade applied.\n" " " -msgstr "" +msgstr "\n Uplatněna sleva %(benefit)s%% na váš první upgrade." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:104 #, python-format @@ -2407,104 +2459,104 @@ msgid "" "\n" " Coupon %(voucher_code)s applied for %(total_benefit)s off\n" " " -msgstr "" +msgstr "\n Kupon %(voucher_code)s byl použit pro slevu %(total_benefit)s\n " #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:110 msgid "Remove coupon" -msgstr "" +msgstr "Odebrat kupón" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:119 msgid "Add coupon code" -msgstr "" +msgstr "Přidejte kód kupónu" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:119 msgid "(optional)" -msgstr "" +msgstr "(volitelný)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:128 msgid "TOTAL" -msgstr "" +msgstr "CELKEM" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:135 msgid "order details" -msgstr "" +msgstr "podrobnosti objednávky" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:153 msgid "select payment method" -msgstr "" +msgstr "vyberte způsob platby" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:155 msgid "Pay with a Credit Card" -msgstr "" +msgstr "Plaťte kreditní kartou" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:166 msgid "Pay with PayPal" -msgstr "" +msgstr "Plaťte přes PayPal" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:175 msgid "Pay with Apple Pay" -msgstr "" +msgstr "Plaťte pomocí Apple Pay" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:190 msgid "card holder information" -msgstr "" +msgstr "informace o držiteli karty" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:201 msgid "billing information" -msgstr "" +msgstr "fakturační údaje" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:203 msgid "Credit cards" -msgstr "" +msgstr "Kreditní karty" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:210 msgid "Card Number (required)" -msgstr "" +msgstr "Číslo karty (vyžadováno)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:210 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:220 msgid "Secure" -msgstr "" +msgstr "Bezpečný" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:213 msgid "Credit card icon" -msgstr "" +msgstr "Ikona kreditní karty" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:219 msgid "Security Code (required)" -msgstr "" +msgstr "Bezpečnostní kód (vyžadováno)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:223 msgid "Help with CVV" -msgstr "" +msgstr "Pomoc s CVV" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:226 msgid "" "The three last digits in the signature area on the back of your card. For " "American Express, it is the four digits on the front of the card." -msgstr "" +msgstr "Poslední tři číslice v oblasti podpisu na zadní straně karty. U American Express jsou to čtyři číslice na přední straně karty." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:233 msgid "Expiration (required)" -msgstr "" +msgstr "Vypršení platnosti (povinné)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:237 msgid "Month" -msgstr "" +msgstr "Měsíc" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:247 msgid "Year" -msgstr "" +msgstr "Rok" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:264 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:274 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:152 msgid "Place Order" -msgstr "" +msgstr "Objednejte si" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:23 msgid "Earn a valuable certificate to showcase the skills you learn in" -msgstr "" +msgstr "Získejte hodnotný certifikát, který předvede dovednosti, které se učíte" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:70 #, python-format @@ -2512,7 +2564,7 @@ msgid "" "\n" " %(benefit_value)s off\n" " " -msgstr "" +msgstr "\n %(benefit_value)s sleva\n " #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:99 #, python-format @@ -2520,20 +2572,20 @@ msgid "" "\n" " Coupon code %(voucher_code)s applied\n" " " -msgstr "" +msgstr "\n Byl použit kód kupónu %(voucher_code)s\n " #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:116 msgid "Apply a coupon code" -msgstr "" +msgstr "Uplatněte kód kupónu" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:164 #, python-format msgid "Checkout with %(title)s" -msgstr "" +msgstr "Zaplatit přes %(title)s" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:166 msgid "Checkout" -msgstr "" +msgstr "Zaplatit" #. Translators: tags will bold the text within. Keep the #. tags and translate the text within. @@ -2542,15 +2594,15 @@ msgstr "" msgid "" "{strong_start}Note:{strong_end} To complete your enrollment, select Checkout" " or Checkout with PayPal." -msgstr "" +msgstr "{strong_start}Poznámka:{strong_end} Pro dokončení zápisu vyberte Checkout nebo Checkout with PayPal." #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:185 msgid "Have questions?" -msgstr "" +msgstr "Máte otázky?" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:186 msgid "Please read our FAQs to view common questions about our certificates." -msgstr "" +msgstr "Přečtěte si prosím naše časté dotazy, kde najdete běžné dotazy k našim certifikátům." #: ecommerce/templates/oscar/basket/partials/seat_type.html:6 #, python-format @@ -2558,12 +2610,12 @@ msgid "" "\n" " %(seat_type)s Certificate\n" " " -msgstr "" +msgstr "\n Certifikát %(seat_type)s\n " #: ecommerce/templates/oscar/checkout/cancel_checkout.html:7 #: ecommerce/templates/oscar/checkout/cancel_checkout.html:16 msgid "Checkout Cancelled" -msgstr "" +msgstr "Odhlášení zrušeno" #: ecommerce/templates/oscar/checkout/cancel_checkout.html:18 #, python-brace-format @@ -2572,20 +2624,20 @@ msgid "" " Your transaction has been cancelled. If you feel an error has occurred, contact {start_link}\n" " {payment_support_email}{end_link}.\n" " " -msgstr "" +msgstr "\nVaše transakce byla zrušena. Pokud se domníváte, že došlo k chybě, kontaktujte {start_link} {payment_support_email}{end_link}." #: ecommerce/templates/oscar/checkout/error.html:7 #: ecommerce/templates/oscar/checkout/error.html:18 msgid "Checkout Error" -msgstr "" +msgstr "Chyba při platbě" #: ecommerce/templates/oscar/checkout/error.html:19 msgid "An error has occurred with your payment." -msgstr "" +msgstr "Při platbě došlo k chybě." #: ecommerce/templates/oscar/checkout/error.html:19 msgid "You have not been charged." -msgstr "" +msgstr "Nebylo vám nic účtováno." #: ecommerce/templates/oscar/checkout/error.html:21 #, python-brace-format @@ -2594,38 +2646,38 @@ msgid "" " Please try to submit your payment again. If this problem persists, please refer to our {start_link}\n" " Payments FAQ {end_link} for troubleshooting tips.\n" " " -msgstr "" +msgstr "\nZkuste prosím platbu odeslat znovu. Pokud tento problém přetrvává, prostudujte si naše {start_link} Nejčastější dotazy k platbám {end_link}, kde naleznete tipy pro odstraňování problémů." #: ecommerce/templates/oscar/checkout/payment_error.html:7 #: ecommerce/templates/oscar/checkout/payment_error.html:16 msgid "Payment Failed" -msgstr "" +msgstr "Platba selhala" #: ecommerce/templates/oscar/checkout/payment_error.html:18 #, python-brace-format msgid "" "An error occurred while processing your payment. {strong_start}You have not " "been charged.{strong_end}" -msgstr "" +msgstr "Při zpracování vaší platby došlo k chybě. {strong_start}Nebyly vám účtovány poplatky.{strong_end}" #: ecommerce/templates/oscar/checkout/payment_error.html:25 #, python-brace-format msgid "" "Please wait a few minutes and then try again. For help, check our " "{start_link}Help Center{end_link}." -msgstr "" +msgstr "Počkejte prosím několik minut a zkuste to znovu. Potřebujete-li pomoc, navštivte naše {start_link}centrum nápovědy{end_link}." #: ecommerce/templates/oscar/checkout/payment_error.html:32 #, python-brace-format msgid "To try again, return to your {start_link}dashboard{end_link}." -msgstr "" +msgstr "Chcete-li to zkusit znovu, vraťte se na {start_link}ovládací panel{end_link}." #: ecommerce/templates/oscar/checkout/sdn_failure.html:9 msgid "" "\n" " SDN Check Failure\n" " " -msgstr "" +msgstr "\nSelhání kontroly SDN" #: ecommerce/templates/oscar/checkout/sdn_failure.html:26 msgid "" @@ -2633,7 +2685,7 @@ msgid "" "one or more records on a U.S. Treasury Department sanctions list. This means" " we cannot complete your transaction or provide you with services and must " "suspend your learner account." -msgstr "" +msgstr "Bohužel se zdá, že profil vašeho účtu nebo platební údaje odpovídají jednomu nebo více záznamům na sankčním seznamu ministerstva financí USA. To znamená, že nemůžeme dokončit vaši transakci nebo vám poskytnout služby a musíme pozastavit váš studentský účet." #: ecommerce/templates/oscar/checkout/sdn_failure.html:35 #, python-brace-format @@ -2642,19 +2694,19 @@ msgid "" "{ofac_email_link} ofac.reconsideration@treasury.gov{end_link} for " "information about options for clearing a match. Your account will be " "suspended until this matter is resolved satisfactorily." -msgstr "" +msgstr "Pokud máte dotazy týkající se vymazání shody, kontaktujte prosím {ofac_email_link} ofac.reconsideration@treasury.gov{end_link}, kde získáte informace o možnostech vymazání shody. Váš účet bude pozastaven, dokud nebude tato záležitost uspokojivě vyřešena." #: ecommerce/templates/oscar/communication/email_base.html:189 #: ecommerce/templates/oscar/customer/email_base.html:189 #, python-format msgid "Copyright © %(year)s %(platform_name)s. All rights reserved." -msgstr "" +msgstr "Copyright © %(year)s %(platform_name)s. Všechna práva vyhrazena." #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:9 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:4 #, python-format msgid "Hi %(full_name)s," -msgstr "" +msgstr "Ahoj %(full_name)s," #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:11 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:6 @@ -2662,7 +2714,7 @@ msgstr "" msgid "" "Thank you for purchasing %(course_title)s. A charge will appear on your " "credit or debit card statement with a company name of \"%(platform_name)s\"." -msgstr "" +msgstr "Děkujeme, že jste si zakoupili %(course_title)s. Na výpisu z vaší kreditní nebo debetní karty se objeví poplatek s názvem společnosti „%(platform_name)s“." #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:13 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:8 @@ -2670,7 +2722,7 @@ msgstr "" msgid "" "You can access your course and complete your verification (if required) on " "your %(platform_name)s dashboard. " -msgstr "" +msgstr "Ke svému kurzu můžete přistupovat a dokončit ověření (je-li vyžadováno) v řídicím panelu %(platform_name)s." #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:14 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:9 @@ -2678,59 +2730,59 @@ msgstr "" msgid "" "To explore other great courses, visit the %(platform_name)s website. More " "courses are added every day!" -msgstr "" +msgstr "Chcete-li prozkoumat další skvělé kurzy, navštivte webovou stránku %(platform_name)s. Každý den přibývají další kurzy!" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:17 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:43 msgid "View Payment Information" -msgstr "" +msgstr "Zobrazit informace o platbě" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:20 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:14 msgid "Thank you. We hope you enjoy the course!" -msgstr "" +msgstr "Děkujeme. Doufáme, že se vám kurz bude líbit!" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:21 #, python-format msgid "%(platform_name)s team " -msgstr "" +msgstr "Tým %(platform_name)s " #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:31 #, python-format msgid "" "You are receiving this email because you purchased a seat in the " "%(platform_name)s course %(course_title)s." -msgstr "" +msgstr "Tento e-mail jste obdrželi, protože jste si zakoupili místo v kurzu %(platform_name)s %(course_title)s." #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:2 msgid "Receipt Confirmation for: " -msgstr "" +msgstr "Potvrzení účtenky pro:" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:11 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:12 msgid "To view your payment information, visit the following website." -msgstr "" +msgstr "Chcete-li zobrazit své platební údaje, navštivte následující web." #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:16 #, python-format msgid "%(platform_name)s team" -msgstr "" +msgstr "Tým %(platform_name)s" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:18 msgid "The edX team" -msgstr "" +msgstr "Tým edX" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_subject.txt:2 msgid "Order Placed" -msgstr "" +msgstr "Objednávka zadána" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:13 msgid "Payment Confirmation" -msgstr "" +msgstr "Potvrzení platby" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:27 msgid "Payment confirmation for:" -msgstr "" +msgstr "Potvrzení platby za:" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:55 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:4 @@ -2738,7 +2790,7 @@ msgstr "" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:5 #, python-format msgid "Dear %(full_name)s," -msgstr "" +msgstr "Vážený %(full_name)s," #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:60 #, python-format @@ -2746,7 +2798,7 @@ msgid "" "\n" " Thank you for purchasing %(credit_hours)s credit hours from %(credit_provider)s for %(course_title)s. A charge will appear on your credit or debit card statement with a company name of \"%(platform_name)s\".\n" " " -msgstr "" +msgstr "\n Děkujeme, že jste si zakoupili kreditní hodiny %(credit_hours)s od %(credit_provider)s pro %(course_title)s. Na výpisu z vaší kreditní nebo debetní karty se objeví poplatek s názvem společnosti „%(platform_name)s“.\n " #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:67 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:8 @@ -2756,7 +2808,7 @@ msgid "" "%(credit_provider)s website. For a link to request credit from " "%(credit_provider)s, or to see the status of your credit request, go to your" " %(platform_name)s dashboard." -msgstr "" +msgstr "Chcete-li získat zápočet z kurzu, musíte také požádat o zápočet na webu %(credit_provider)s. Odkaz na žádost o zápočet z %(credit_provider)s nebo zobrazení stavu žádosti o zápočet najdete na řídicím panelu %(platform_name)s." #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:71 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:10 @@ -2764,18 +2816,18 @@ msgstr "" msgid "" "To explore other credit-eligible courses, visit the %(platform_name)s " "website. We add new courses frequently!" -msgstr "" +msgstr "Chcete-li prozkoumat další kurzy způsobilé pro zápočet, navštivte webovou stránku %(platform_name)s. Často přidáváme nové kurzy!" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:74 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:15 msgid "Thank you. We hope you enjoyed your course!" -msgstr "" +msgstr "Děkuju. Doufáme, že se vám kurz líbil!" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:75 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:16 #, python-format msgid "The %(platform_name)s team" -msgstr "" +msgstr "Tým %(platform_name)s" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:88 #, python-format @@ -2783,11 +2835,11 @@ msgid "" "\n" " You received this message because you purchased credit hours for %(course_title)s, an %(platform_name)s course.\n" " " -msgstr "" +msgstr "\n Tuto zprávu jste obdrželi, protože jste si zakoupili kreditní hodiny pro %(course_title)s, kurz %(platform_name)s.\n " #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:2 msgid "Payment confirmation for: " -msgstr "" +msgstr "Potvrzení platby za: " #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:6 #, python-format @@ -2795,22 +2847,22 @@ msgid "" "Thank you for purchasing %(credit_hours)s credit hours from " "%(credit_provider)s for %(course_title)s. A charge will appear on your " "credit or debit card statement with a company name of \"%(platform_name)s\"." -msgstr "" +msgstr "Děkujeme, že jste si zakoupili kreditní hodiny %(credit_hours)s od %(credit_provider)s pro %(course_title)s. Na výpisu z vaší kreditní nebo debetní karty se objeví poplatek s názvem společnosti „%(platform_name)s“." #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:18 #, python-format msgid "" "You received this message because you purchased credit hours for " "%(course_title)s, an %(platform_name)s course." -msgstr "" +msgstr "Tuto zprávu jste obdrželi, protože jste si zakoupili kreditní hodiny pro %(course_title)s, kurz %(platform_name)s." #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_subject.txt:2 msgid "Order Receipt" -msgstr "" +msgstr "Potvrzení objednávky" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:14 msgid "For Business" -msgstr "" +msgstr "Pro obchod" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:26 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:6 @@ -2818,7 +2870,7 @@ msgstr "" msgid "" "Thank you for purchasing access to %(course_name)s. Let's get your group " "ready to learn with edX:" -msgstr "" +msgstr "Děkujeme, že jste si zakoupili přístup k %(course_name)s. Připravme vaši skupinu na učení s edX:" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:29 #, python-brace-format @@ -2826,22 +2878,22 @@ msgid "" "\n" " Download and save the {link_start}{download_csv_link}{link_middle} enrollment code file.{link_end}\n" " " -msgstr "" +msgstr "\nStáhněte si a uložte soubor s registračním kódem {link_start}{download_csv_link}{link_middle}.{link_end}" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:34 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:9 msgid "Distribute one code per learner before the expiration date." -msgstr "" +msgstr "Distribuujte jeden kód každému studentovi před datem vypršení platnosti." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:35 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:10 msgid "Pro tip: Track which code is associated with which person." -msgstr "" +msgstr "Tip pro profesionály: Sledujte, který kód je spojen s kterou osobou." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:36 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:11 msgid "Learners sign-in/register with edX and enroll for the course." -msgstr "" +msgstr "Studenti se přihlásí/zaregistrují do edX a zapíší se do kurzu." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:39 #, python-brace-format @@ -2849,7 +2901,7 @@ msgid "" "\n" " To view your payment information, log in to see your Order History, under {link_start}{order_history_url}{link_middle}Account Settings{link_end}.\n" " " -msgstr "" +msgstr "\nChcete-li zobrazit své platební údaje, přihlaste se a zobrazte historii objednávek v části {link_start}{order_history_url}{link_middle}Nastavení účtu{link_end}." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:45 #, python-brace-format @@ -2857,79 +2909,79 @@ msgid "" "\n" " For more information and assistance, check our {link_start}Help Center{link_end}\n" " " -msgstr "" +msgstr "\nDalší informace a pomoc naleznete v našem {link_start}centru nápovědy{link_end}" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:50 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:16 msgid "Thank You" -msgstr "" +msgstr "Děkujeme" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:61 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:18 msgid "By purchasing, you and your organization agree to the following terms:" -msgstr "" +msgstr "Nákupem vy a vaše organizace souhlasíte s následujícími podmínkami:" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:63 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:20 msgid "" "Each code is valid for the one course covered and can be used only one time." -msgstr "" +msgstr "Každý kód je platný pro jeden kurz a lze jej použít pouze jednou." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:64 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:21 msgid "You are responsible for distributing codes to your learners." -msgstr "" +msgstr "Jste odpovědní za distribuci kódů svým studentům." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:65 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:22 msgid "" "Each code will expire in one year from date of purchase or, if earlier, once" " the course is closed." -msgstr "" +msgstr "Platnost každého kódu vyprší za jeden rok od data zakoupení nebo, pokud dříve, po uzavření kurzu." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:66 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:23 msgid "" "If a course is not designated as self-paced, you should confirm that a " "course run is available before expiration." -msgstr "" +msgstr "Pokud kurz není označen jako kurz s vlastním tempem, měli byste před vypršením platnosti potvrdit, že je kurz dostupný." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:67 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:24 msgid "You may not resell codes to third parties." -msgstr "" +msgstr "Kódy nesmíte dále prodávat třetím stranám." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:68 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:25 msgid "All sales final. No refunds." -msgstr "" +msgstr "Všechny prodeje jsou konečné. Žádné náhrady." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:2 msgid "Order confirmation for: " -msgstr "" +msgstr "Potvrzení objednávky za: " #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:8 #, python-format msgid "" "Please visit %(download_csv_link)s to download and save the enrollment code " "file." -msgstr "" +msgstr "Navštivte prosím %(download_csv_link)s a stáhněte si a uložte soubor s registračním kódem." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:13 #, python-format msgid "" "To view your payment information, log in to see your Order History, under " "Account Settings at %(order_history_url)s." -msgstr "" +msgstr "Chcete-li zobrazit své platební údaje, přihlaste se a zobrazte historii objednávek v části Nastavení účtu na %(order_history_url)s." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:14 msgid "For more information and assistance, contact info@edx.org." -msgstr "" +msgstr "Pro více informací a pomoc kontaktujte info@edx.org." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_subject.txt:2 #, python-format msgid "%(partner_name)s: Order Confirmation: [%(order_number)s]" -msgstr "" +msgstr "%(partner_name)s: Potvrzení objednávky: [%(order_number)s]" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:6 #: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:6 @@ -2938,26 +2990,26 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:62 #: ecommerce/templates/oscar/dashboard/users/detail.html:99 msgid "Actions" -msgstr "" +msgstr "Akce" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:12 msgid "Edit category" -msgstr "" +msgstr "Upravit kategorii" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:17 msgid "Add child category" -msgstr "" +msgstr "Přidat podřízenou kategorii" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:22 msgid "Edit children" -msgstr "" +msgstr "Upravit podřízené" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:27 #: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:14 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:271 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:700 msgid "Delete" -msgstr "" +msgstr "Smazat" #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:11 #, python-format @@ -2965,7 +3017,7 @@ msgid "" "\n" " Created product variant '%(name)s'.\n" " " -msgstr "" +msgstr "\nVytvořena varianta produktu '%(name)s'." #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:17 #, python-format @@ -2973,7 +3025,7 @@ msgid "" "\n" " Created variant of '%(parent_name)s'.\n" " " -msgstr "" +msgstr "\n Vytvořena varianta '%(parent_name)s'.\n " #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:25 #, python-format @@ -2981,7 +3033,7 @@ msgid "" "\n" " Updated product variant '%(name)s'.\n" " " -msgstr "" +msgstr "\n Aktualizovaná varianta produktu ';%(name)s'.\n " #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:31 #, python-format @@ -2989,7 +3041,7 @@ msgid "" "\n" " Updated a variant of '%(parent_name)s'.\n" " " -msgstr "" +msgstr "\nAktualizována varianta %(parent_name)s." #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:42 #, python-format @@ -2997,7 +3049,7 @@ msgid "" "\n" " Created product '%(name)s'.\n" " " -msgstr "" +msgstr "\nVytvořen produkt '%(name)s'." #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:48 #, python-format @@ -3005,11 +3057,11 @@ msgid "" "\n" " Updated product '%(name)s'.\n" " " -msgstr "" +msgstr "\nAktualizovaný produkt '%(name)s'." #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:60 msgid "Edit again" -msgstr "" +msgstr "Znovu upravit" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:45 #, python-brace-format @@ -3018,266 +3070,266 @@ msgid "" " You are currently editing a product variant of\n" " {start_anchor}{title}{end_anchor}.\n" " " -msgstr "" +msgstr "\nAktuálně upravujete variantu produktu {start_anchor}{title}{end_anchor}." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:61 msgid "Sections" -msgstr "" +msgstr "Sekce" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:73 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:103 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:34 msgid "Product details" -msgstr "" +msgstr "Detaily produktu" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:78 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:146 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:257 msgid "Attributes" -msgstr "" +msgstr "Atributy" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:81 msgid "Images" -msgstr "" +msgstr "Obrázky" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:84 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:188 msgid "Stock and pricing" -msgstr "" +msgstr "Sklad a cena" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:87 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:248 msgid "Variants" -msgstr "" +msgstr "Varianty" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:90 msgid "Upselling" -msgstr "" +msgstr "Upselling" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:148 msgid "Product Type:" -msgstr "" +msgstr "Typ produktu:" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:169 msgid "Upload, change or remove images" -msgstr "" +msgstr "Nahrajte, změňte nebo odstraňte obrázky" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:194 msgid "SKU" -msgstr "" +msgstr "SKU" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:196 msgid "Num in stock" -msgstr "" +msgstr "Počet na skladě" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:197 msgid "Num allocated" -msgstr "" +msgstr "Počet přidělených" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:198 msgid "Low stock threshold" -msgstr "" +msgstr "Nízká skladová hranice" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:201 msgid "Cost price" -msgstr "" +msgstr "Pořizovací cena" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:202 msgid "Price (excl tax)" -msgstr "" +msgstr "Cena (bez daně)" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:203 msgid "Retail price" -msgstr "" +msgstr "Maloobchodní cena" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:204 msgid "Delete?" -msgstr "" +msgstr "Smazat?" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:249 msgid "Adding..." -msgstr "" +msgstr "Přidávání..." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:251 msgid "Add variant" -msgstr "" +msgstr "Přidat variantu" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:256 msgid "Title" -msgstr "" +msgstr "Název" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:258 msgid "Stock records" -msgstr "" +msgstr "Skladové záznamy" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:280 msgid "This product does not have any variants." -msgstr "" +msgstr "Tento produkt nemá žádné varianty." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:282 msgid "One can't add variants to this product at this point." -msgstr "" +msgstr "V tuto chvíli nelze k tomuto produktu přidávat varianty." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:284 msgid "This is likely because this product still has stock records." -msgstr "" +msgstr "Je to pravděpodobně proto, že tento produkt má stále skladovou evidenci." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:300 msgid "Recommended products" -msgstr "" +msgstr "Doporučené produkty" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:325 msgid "or" -msgstr "" +msgstr "nebo" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:327 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:331 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:334 msgid "Saving..." -msgstr "" +msgstr "Ukládání..." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:328 msgid "Save and add another variant" -msgstr "" +msgstr "Uložit a přidat další variantu" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:332 msgid "Save and continue editing" -msgstr "" +msgstr "Uložit a pokračovat v úpravách" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:335 msgid "Save" -msgstr "" +msgstr "Uložit" #: ecommerce/templates/oscar/dashboard/index.html:27 msgid "Store Statistics (Last 24 Hours)" -msgstr "" +msgstr "Statistiky obchodu (za posledních 24 hodin)" #: ecommerce/templates/oscar/dashboard/index.html:34 msgid "New Customers" -msgstr "" +msgstr "Noví zákazníci" #: ecommerce/templates/oscar/dashboard/index.html:35 #: ecommerce/templates/oscar/dashboard/index.html:41 msgid "Revenue" -msgstr "" +msgstr "Příjmy" #: ecommerce/templates/oscar/dashboard/index.html:36 msgid "Average order cost" -msgstr "" +msgstr "Průměrná cena objednávky" #: ecommerce/templates/oscar/dashboard/index.html:37 msgid "Average (paid) order cost" -msgstr "" +msgstr "Průměrná (zaplacená) cena objednávky" #: ecommerce/templates/oscar/dashboard/index.html:67 msgid "Products and vouchers" -msgstr "" +msgstr "Produkty a poukazy" #: ecommerce/templates/oscar/dashboard/index.html:69 msgid "Total products" -msgstr "" +msgstr "Celkem produktů" #: ecommerce/templates/oscar/dashboard/index.html:73 msgid "Active Vouchers" -msgstr "" +msgstr "Aktivní poukazy" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:6 #, python-format msgid "%(name)s | Offers " -msgstr "" +msgstr "%(name)s | Nabídky" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:25 msgid "Reinstating..." -msgstr "" +msgstr "Obnovování..." #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:25 msgid "Reinstate offer" -msgstr "" +msgstr "Obnovit nabídku" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:26 msgid "Suspending..." -msgstr "" +msgstr "Pozastavení..." #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:26 msgid "Suspend offer" -msgstr "" +msgstr "Pozastavit nabídku" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:27 msgid "Delete offer" -msgstr "" +msgstr "Smazat nabídku" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:38 msgid "Offer currently available" -msgstr "" +msgstr "Nabídka aktuálně dostupná" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:39 msgid "Offer not available due to restrictions!" -msgstr "" +msgstr "Nabídka není z důvodu omezení dostupná!" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:41 msgid "Total cost:" -msgstr "" +msgstr "Celkové náklady:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:42 msgid "Number of orders:" -msgstr "" +msgstr "Počet objednávek:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:43 msgid "Number of uses:" -msgstr "" +msgstr "Počet použití:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:48 msgid "Date created:" -msgstr "" +msgstr "Datum vytvoření:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:49 msgid "Offer details" -msgstr "" +msgstr "Podrobnosti nabídky" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:67 #: ecommerce/templates/oscar/dashboard/offers/summary.html:20 msgid "Incentive" -msgstr "" +msgstr "Pobídka" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:72 #: ecommerce/templates/oscar/dashboard/offers/summary.html:26 msgid "Condition" -msgstr "" +msgstr "Stav" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:77 #: ecommerce/templates/oscar/dashboard/offers/summary.html:31 msgid "Restrictions" -msgstr "" +msgstr "Omezení" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:92 msgid "Export to CSV" -msgstr "" +msgstr "Exportovat do CSV" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:93 msgid "Orders that used this offer" -msgstr "" +msgstr "Objednávky, které využily tuto nabídku" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:97 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:68 msgid "Order number" -msgstr "" +msgstr "Číslo objednávky" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:98 msgid "Order date" -msgstr "" +msgstr "Datum objednávky" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:99 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:292 msgid "Order total" -msgstr "" +msgstr "Celkem objednávka" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:100 msgid "Cost" -msgstr "" +msgstr "Náklady" #: ecommerce/templates/oscar/dashboard/offers/summary.html:4 msgid "Offer summary" -msgstr "" +msgstr "Shrnutí nabídky" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:6 #, python-format @@ -3285,77 +3337,77 @@ msgid "" "\n" " Order %(number)s - Line #%(id)s\n" " " -msgstr "" +msgstr "\n Objednávka %(number)s – řádek #%(id)s\n " #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:22 #, python-format msgid "Line #%(id)s" -msgstr "" +msgstr "Řádek #%(id)s" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:27 #, python-format msgid "Order #%(number)s - Line #%(id)s" -msgstr "" +msgstr "Objednávka #%(number)s – řádek #%(id)s" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:38 msgctxt "Product title" msgid "Title" -msgstr "" +msgstr "Název" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:44 msgid "Product Type" -msgstr "" +msgstr "Typ produktu" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:47 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:140 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:110 msgid "UPC" -msgstr "" +msgstr "UPC" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:54 msgid "Product Options" -msgstr "" +msgstr "Možnosti produktu" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:67 msgid "Partner details" -msgstr "" +msgstr "Podrobnosti o partnerovi" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:77 msgid "Partner SKU" -msgstr "" +msgstr "Partner SKU" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:83 msgid "Shipping details" -msgstr "" +msgstr "Podrobnosti o přepravě" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:87 msgid "Partner reference number" -msgstr "" +msgstr "Referenční číslo partnera" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:90 msgid "Partner notes" -msgstr "" +msgstr "Poznámky partnera" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:93 msgid "Estimate dispatch date" -msgstr "" +msgstr "Odhadovaný datum odeslání" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:102 msgid "Shipping status" -msgstr "" +msgstr "Stav dodávky" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:107 msgid "State" -msgstr "" +msgstr "Stav" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:119 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:150 msgid "No shipping events have occurred." -msgstr "" +msgstr "Nenastaly žádné přepravní události." #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:127 msgid "Shipping events" -msgstr "" +msgstr "Přepravní akce" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:132 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:163 @@ -3363,7 +3415,7 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:452 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:168 msgid "Event" -msgstr "" +msgstr "událost" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:134 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:406 @@ -3372,7 +3424,7 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:595 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:172 msgid "Reference" -msgstr "" +msgstr "Odkaz" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:135 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:165 @@ -3382,130 +3434,130 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:679 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:167 msgid "Date" -msgstr "" +msgstr "Datum" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:158 msgid "Payment events" -msgstr "" +msgstr "Platební akce" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:179 msgid "No payment events have occurred." -msgstr "" +msgstr "Nenastaly žádné platební události." #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:10 #, python-format msgid "Order %(number)s" -msgstr "" +msgstr "Objednávka %(number)s" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:39 #, python-format msgid "Order #%(number)s" -msgstr "" +msgstr "Objednávka č.%(number)s" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:45 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:49 msgid "Customer Information" -msgstr "" +msgstr "Informace o zákazníkovi" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:49 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:53 #: ecommerce/templates/oscar/dashboard/users/detail.html:44 msgid "Full name" -msgstr "" +msgstr "Jméno" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:50 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:54 msgid "Email address" -msgstr "" +msgstr "Emailová adresa" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:59 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:63 msgid "Customer has deleted their account." -msgstr "" +msgstr "Zákazník smazal svůj účet." #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:67 msgid "Order information" -msgstr "" +msgstr "Informace o objednávce" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:69 msgid "Order Total" -msgstr "" +msgstr "Celková objednávka" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:70 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:74 msgid "Date of purchase" -msgstr "" +msgstr "Datum nákupu" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:71 msgid "Time of purchase" -msgstr "" +msgstr "Čas nákupu" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:85 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:108 msgid "Retry Fulfillment" -msgstr "" +msgstr "Opakovat plnění" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:96 msgid "Order Details" -msgstr "" +msgstr "podrobnosti objednávky" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:104 msgid "Order contents" -msgstr "" +msgstr "Obsah objednávky" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:110 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:491 msgid "Shipping" -msgstr "" +msgstr "Přeprava" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:113 msgid "Payment" -msgstr "" +msgstr "Platba" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:116 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:623 msgid "Discounts" -msgstr "" +msgstr "slevy" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:119 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:673 msgid "Notes" -msgstr "" +msgstr "Poznámky" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:127 msgid "Items ordered" -msgstr "" +msgstr "Objednané položky" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:137 msgid "Line ID" -msgstr "" +msgstr "ID řádku" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:139 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:109 msgid "Product" -msgstr "" +msgstr "Produkt" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:142 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:112 msgid "Supplier" -msgstr "" +msgstr "Dodavatel" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:143 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:113 msgid "Supplier SKU" -msgstr "" +msgstr "SKU dodavatele" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:144 msgid "Est. dispatch date" -msgstr "" +msgstr "Odh. datum odeslání" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:145 msgid "Price excl tax (before discounts)" -msgstr "" +msgstr "Cena bez daně (před slevami)" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:146 msgid "Price inc tax (before discounts)" -msgstr "" +msgstr "Cena včetně daně (před slevami)" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:188 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:105 @@ -3513,98 +3565,98 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:90 #: ecommerce/templates/oscar/dashboard/users/detail.html:155 msgid "View" -msgstr "" +msgstr "Zobrazit" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:206 msgid "Basket total (excl. discounts)" -msgstr "" +msgstr "Celková částka košíku (bez slev)" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:227 msgid "Basket total (inc. discounts)" -msgstr "" +msgstr "Celková částka košíku (včetně slev)" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:237 msgid "Basket total" -msgstr "" +msgstr "Košík celkem" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:250 msgid "Shipping total (excl. discounts)" -msgstr "" +msgstr "Celková cena dopravy (bez slev)" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:271 msgid "Shipping total (inc. discounts)" -msgstr "" +msgstr "Celkem přeprava (včetně slev)" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:281 msgid "Shipping total" -msgstr "" +msgstr "Přeprava celkem" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:309 msgid "With selected lines" -msgstr "" +msgstr "S vybranými řádkami" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:315 msgid "Change line status to" -msgstr "" +msgstr "Změnit stav řádku na" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:319 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:125 msgid "choose new status" -msgstr "" +msgstr "zvolte nový stav" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:331 msgid "Create shipping event" -msgstr "" +msgstr "Vytvořit přepravní událost" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:335 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:354 msgid "choose event type" -msgstr "" +msgstr "vyberte typ události" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:342 msgid "with reference" -msgstr "" +msgstr "s odkazem" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:350 msgid "Create payment event" -msgstr "" +msgstr "Vytvořit platební událost" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:361 msgid "with amount" -msgstr "" +msgstr "s částkou" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:369 msgid "Create refund" -msgstr "" +msgstr "Vytvořit vrácení peněz" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:373 msgid "Go!" -msgstr "" +msgstr "Jít!" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:382 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:119 msgid "Change order status" -msgstr "" +msgstr "Změnit stav objednávky" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:386 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:134 msgid "Change status" -msgstr "" +msgstr "Změnit stav" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:388 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:136 msgid "This order can't have its status changed." -msgstr "" +msgstr "U této objednávky nelze změnit její stav." #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:396 msgid "Shipping Events" -msgstr "" +msgstr "Přepravní akce" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:405 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:454 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:170 msgid "Lines" -msgstr "" +msgstr "Řádky" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:419 #, python-format @@ -3612,400 +3664,400 @@ msgid "" "\n" " %(title)s (quantity %(event_qty)s/%(total_qty)s)\n" " " -msgstr "" +msgstr "\n%(title)s (množství %(event_qty)s/%(total_qty)s)\n " #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:434 msgid "No shipping events." -msgstr "" +msgstr "Žádné přepravní události." #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:444 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:159 msgid "Payment Events" -msgstr "" +msgstr "Platební události" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:453 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:594 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:634 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:169 msgid "Amount" -msgstr "" +msgstr "Množství" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:467 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Product:" -msgstr "" +msgstr "Produkt:" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:467 msgid "quantity" -msgstr "" +msgstr "Množství" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:479 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:196 msgid "No payment events." -msgstr "" +msgstr "Žádné platební události." #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:496 msgid "Method name" -msgstr "" +msgstr "Název metody" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:500 msgid "Method code" -msgstr "" +msgstr "Kód metody" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:504 msgid "Charge (incl tax)" -msgstr "" +msgstr "Poplatek (včetně daně)" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:508 msgid "Charge (excl tax)" -msgstr "" +msgstr "Poplatek (bez daně)" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:512 msgid "Address" -msgstr "" +msgstr "Adresa" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:523 msgid "Phone" -msgstr "" +msgstr "Telefon" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:527 msgid "Instructions" -msgstr "" +msgstr "Instrukce" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:540 msgid "Billing address" -msgstr "" +msgstr "Fakturační adresa" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:551 msgid "Payment sources" -msgstr "" +msgstr "Platební zdroje" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:557 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:593 msgid "Source" -msgstr "" +msgstr "Zdroj" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:558 msgid "Allocation" -msgstr "" +msgstr "Přidělení" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:559 msgid "Amount debited" -msgstr "" +msgstr "Částka odepsaná na vrub" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:560 msgid "Amount refunded" -msgstr "" +msgstr "Vrácená částka" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:579 msgid "No payment sources found for this order." -msgstr "" +msgstr "Pro tuto objednávku nebyly nalezeny žádné platební zdroje." #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:588 msgid "Transactions" -msgstr "" +msgstr "Transakce" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:630 msgid "Voucher" -msgstr "" +msgstr "Poukaz" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:631 msgid "Offer name" -msgstr "" +msgstr "Název nabídky" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:632 msgid "Frequency" -msgstr "" +msgstr "Frekvence" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:633 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:682 msgid "Message" -msgstr "" +msgstr "Zpráva" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:661 msgid "No discounts were applied to this order." -msgstr "" +msgstr "Na tuto objednávku nebyly uplatněny žádné slevy." #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:683 msgid "Admin" -msgstr "" +msgstr "Admin" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:708 msgid "No notes available." -msgstr "" +msgstr "Nejsou k dispozici žádné poznámky." #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:719 msgid "Save note" -msgstr "" +msgstr "Uložit poznámku" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:720 msgid "Notes are only editable for 5 minutes after being saved." -msgstr "" +msgstr "Poznámky lze upravovat pouze 5 minut po uložení." #: ecommerce/templates/oscar/dashboard/orders/order_list.html:58 msgid "Download selected orders as a CSV" -msgstr "" +msgstr "Stáhnout vybrané objednávky jako CSV" #: ecommerce/templates/oscar/dashboard/orders/order_list.html:60 msgid "Download" -msgstr "" +msgstr "Stažení" #: ecommerce/templates/oscar/dashboard/orders/order_list.html:69 msgid "Total inc tax" -msgstr "" +msgstr "Celkem vč. daně" #: ecommerce/templates/oscar/dashboard/orders/order_list.html:70 msgid "Number of items" -msgstr "" +msgstr "Počet položek" #: ecommerce/templates/oscar/dashboard/orders/order_list.html:92 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:99 #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:78 #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:85 msgid "Deleted" -msgstr "" +msgstr "Odstraněný" #: ecommerce/templates/oscar/dashboard/orders/order_list.html:149 msgid "No orders found." -msgstr "" +msgstr "Nebyly nalezeny žádné objednávky." #: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:4 #: ecommerce/templates/oscar/dashboard/users/detail.html:123 msgid "Enrollments" -msgstr "" +msgstr "Zápisy" #: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:9 msgid "Mode" -msgstr "" +msgstr "Režim" #: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:10 msgid "Active?" -msgstr "" +msgstr "Aktivní?" #: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:21 msgid "No enrollments found." -msgstr "" +msgstr "Nebyly nalezeny žádné přihlášky." #: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:8 msgid "Confirm Refund Processing" -msgstr "" +msgstr "Potvrďte zpracování refundace" #: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:11 msgid "" "Are you sure you want to issue a full refund and revoke student's " "enrollment?" -msgstr "" +msgstr "Opravdu chcete vrátit peníze v plné výši a zrušit zápis studenta?" #: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:14 msgid "" "Are you sure you want to issue a full refund without revoking student's " "enrollment?" -msgstr "" +msgstr "Opravdu chcete vrátit peníze v plné výši, aniž byste zrušili zápis studenta?" #: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:17 msgid "Are you sure you want to deny this refund request?" -msgstr "" +msgstr "Opravdu chcete zamítnout tuto žádost o vrácení peněz?" #: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:21 msgid "Confirm" -msgstr "" +msgstr "Potvrdit" #: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:5 msgid "Approve Credit and Revoke" -msgstr "" +msgstr "Schválit zápočet a zrušit" #: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:8 msgid "Approve Credit Only" -msgstr "" +msgstr "Schválit pouze zápočet" #: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:14 msgid "Deny" -msgstr "" +msgstr "Zamítnout" #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:10 #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:57 msgid "Number of Items" -msgstr "" +msgstr "Počet položek" #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:11 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:73 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:148 #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:56 msgid "Total Credit" -msgstr "" +msgstr "Celkový zápočet" #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:12 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:74 #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:61 msgid "Created" -msgstr "" +msgstr "Vytvořeno" #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:31 #: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:104 msgid "No refunds found." -msgstr "" +msgstr "Nenalezeny žádné vrácení peněz." #: ecommerce/templates/oscar/dashboard/partials/search_form.html:4 #: ecommerce/templates/oscar/dashboard/partials/search_form.html:25 #: ecommerce/templates/oscar/dashboard/partials/search_form.html:45 msgid "Search" -msgstr "" +msgstr "Hledat" #: ecommerce/templates/oscar/dashboard/partials/search_form.html:26 #: ecommerce/templates/oscar/dashboard/partials/search_form.html:34 msgid "Advanced Search" -msgstr "" +msgstr "pokročilé vyhledávání" #: ecommerce/templates/oscar/dashboard/partials/search_form.html:44 msgid "Close" -msgstr "" +msgstr "Zavřít" #: ecommerce/templates/oscar/dashboard/partials/search_form.html:45 msgid "Searching..." -msgstr "" +msgstr "Vyhledávám..." #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:11 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:42 #, python-format msgid "Refund #%(id)s" -msgstr "" +msgstr "Vrácení peněz #%(id)s" #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:71 msgid "Refund Overview" -msgstr "" +msgstr "Přehled vrácení peněz" #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:76 msgid "Associated Order" -msgstr "" +msgstr "Přidružená objednávka" #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:97 msgid "Refund Items" -msgstr "" +msgstr "Vrácení položek" #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:106 msgid "Refund Line ID" -msgstr "" +msgstr "ID linky pro vrácení peněz" #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:107 msgid "Associated Order Line" -msgstr "" +msgstr "Přidružená objednávková linka" #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:114 msgid "Credit (excl. tax)" -msgstr "" +msgstr "Kredit (bez daně)" #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:171 msgid "Processor" -msgstr "" +msgstr "Zpracovatel" #: ecommerce/templates/oscar/dashboard/users/detail.html:36 msgid "General" -msgstr "" +msgstr "Obecné" #: ecommerce/templates/oscar/dashboard/users/detail.html:54 msgid "Yes,No" -msgstr "" +msgstr "Ano, Ne" #: ecommerce/templates/oscar/dashboard/users/detail.html:58 msgid "Superuser" -msgstr "" +msgstr "Superuživatel" #: ecommerce/templates/oscar/dashboard/users/detail.html:59 #: ecommerce/templates/oscar/dashboard/users/detail.html:63 msgid "True,False" -msgstr "" +msgstr "True,False" #: ecommerce/templates/oscar/dashboard/users/detail.html:62 msgid "Staff" -msgstr "" +msgstr "Učitelé" #: ecommerce/templates/oscar/dashboard/users/detail.html:66 msgid "Last login" -msgstr "" +msgstr "Poslední přihlášení" #: ecommerce/templates/oscar/dashboard/users/detail.html:70 msgid "Date joined" -msgstr "" +msgstr "Datum připojení" #: ecommerce/templates/oscar/dashboard/users/detail.html:76 msgid "Products viewed" -msgstr "" +msgstr "Prohlížené produkty" #: ecommerce/templates/oscar/dashboard/users/detail.html:80 msgid "Number of orders" -msgstr "" +msgstr "Počet objednávek" #: ecommerce/templates/oscar/dashboard/users/detail.html:84 msgid "Number of ordered items" -msgstr "" +msgstr "Počet objednaných položek" #: ecommerce/templates/oscar/dashboard/users/detail.html:88 msgid "Total spent" -msgstr "" +msgstr "Celkem utraceno" #: ecommerce/templates/oscar/dashboard/users/detail.html:94 msgid "Reviews written" -msgstr "" +msgstr "Recenzí napsáno" #: ecommerce/templates/oscar/dashboard/users/detail.html:107 msgid "Send password reset email" -msgstr "" +msgstr "Odeslat e-mail pro obnovení hesla" #: ecommerce/templates/oscar/dashboard/users/detail.html:125 #: ecommerce/templates/oscar/dashboard/users/detail.html:186 msgid "Addresses" -msgstr "" +msgstr "Adresy" #: ecommerce/templates/oscar/dashboard/users/detail.html:126 #: ecommerce/templates/oscar/dashboard/users/detail.html:214 msgid "Reviews" -msgstr "" +msgstr "Recenze" #: ecommerce/templates/oscar/dashboard/users/detail.html:139 msgid "Num items" -msgstr "" +msgstr "Počet položek" #: ecommerce/templates/oscar/dashboard/users/detail.html:140 msgid "Total value" -msgstr "" +msgstr "Celková hodnota" #: ecommerce/templates/oscar/dashboard/users/detail.html:141 msgid "Date placed" -msgstr "" +msgstr "Datum objednání" #: ecommerce/templates/oscar/dashboard/users/detail.html:160 msgid "This customer has not placed any orders yet." -msgstr "" +msgstr "Tento zákazník ještě nezadal žádné objednávky." #: ecommerce/templates/oscar/dashboard/users/detail.html:205 msgid "This customer has not saved any addresses." -msgstr "" +msgstr "Tento zákazník nemá uloženy žádné adresy." #: ecommerce/templates/oscar/dashboard/users/detail.html:217 msgid "Product ID" -msgstr "" +msgstr "ID produktu" #: ecommerce/templates/oscar/dashboard/users/detail.html:218 msgid "Score" -msgstr "" +msgstr "Skóre" #: ecommerce/templates/oscar/dashboard/users/detail.html:219 msgctxt "Product review title" msgid "Title" -msgstr "" +msgstr "Název" #: ecommerce/templates/oscar/dashboard/users/detail.html:220 msgid "Body" -msgstr "" +msgstr "Tělo" #: ecommerce/templates/oscar/dashboard/users/detail.html:221 msgid "Date created" -msgstr "" +msgstr "Datum vytvoření" #: ecommerce/templates/oscar/dashboard/users/detail.html:234 msgid "This customer has not written any reviews yet." -msgstr "" +msgstr "Tento zákazník zatím nenapsal žádné recenze." #: ecommerce/urls.py:45 msgid "E-Commerce Service Administration" -msgstr "" +msgstr "Správa služeb elektronického obchodu" diff --git a/ecommerce/conf/locale/cs/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/cs/LC_MESSAGES/djangojs.mo index f44da98ce3f..ee30a7d56a5 100644 Binary files a/ecommerce/conf/locale/cs/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/cs/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/cs/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/cs/LC_MESSAGES/djangojs.po index b91fbde8d7d..7268b082e65 100644 --- a/ecommerce/conf/locale/cs/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/cs/LC_MESSAGES/djangojs.po @@ -9,15 +9,17 @@ # Translators: # Translators: # Translators: -# trendspotter , 2022 +# Aleš Fiala , 2023 +# Jiří Podhorecký, 2023 +# Jiří Podhorecký, 2022-2023 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" -"Last-Translator: trendspotter , 2022\n" -"Language-Team: Czech (http://www.transifex.com/open-edx/edx-platform/language/cs/)\n" +"Last-Translator: Jiří Podhorecký, 2023\n" +"Language-Team: Czech (http://app.transifex.com/open-edx/edx-platform/language/cs/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,520 +29,520 @@ msgstr "" #: ecommerce/static/js/models/coupon_model.js:33 #: ecommerce/static/js/models/enterprise_coupon_model.js:15 msgid "This field is required." -msgstr "" +msgstr "Toto pole je povinné." #: ecommerce/static/js/models/coupon_model.js:34 #: ecommerce/static/js/models/enterprise_coupon_model.js:16 msgid "This value must be a number." -msgstr "" +msgstr "Tato hodnota musí být číslo." #: ecommerce/static/js/models/coupon_model.js:35 #: ecommerce/static/js/models/enterprise_coupon_model.js:17 msgid "This value must be a date." -msgstr "" +msgstr "Tato hodnota musí být datum." #: ecommerce/static/js/models/coupon_model.js:36 msgid "At least one seat type must be selected." -msgstr "" +msgstr "Musí být vybrán alespoň jeden typ sedadla." #: ecommerce/static/js/models/coupon_model.js:72 msgid "This field must be empty or contain 1-16 alphanumeric characters." -msgstr "" +msgstr "Toto pole musí být prázdné nebo obsahovat 1-16 alfanumerických znaků." #: ecommerce/static/js/models/coupon_model.js:81 #, javascript-format msgid "Email domain {%s} is invalid." -msgstr "" +msgstr "E-mailová doména {%s} je neplatná." #: ecommerce/static/js/models/coupon_model.js:98 msgid "Must occur after start date" -msgstr "" +msgstr "Musí nastat po datu zahájení" #: ecommerce/static/js/models/coupon_model.js:128 msgid "Max uses for multi-use coupons must be higher than 2." -msgstr "" +msgstr "Maximální počet použití pro víceúčelové kupóny musí být vyšší než 2." #: ecommerce/static/js/models/coupon_model.js:152 msgid "Must occur before end date" -msgstr "" +msgstr "Musí nastat před datem ukončení" #: ecommerce/static/js/models/coupon_model.js:174 msgid "A valid course ID is required" -msgstr "" +msgstr "Je vyžadováno platné ID kurzu" #: ecommerce/static/js/models/coupon_model.js:188 msgid "A valid Program UUID is required." -msgstr "" +msgstr "Je vyžadováno platné Program UUID." #: ecommerce/static/js/models/course_model.js:54 msgid "You must select a course type." -msgstr "" +msgstr "Musíte vybrat typ kurzu." #: ecommerce/static/js/models/course_model.js:60 msgid "You must choose if an honor seat should be created." -msgstr "" +msgstr "Musíte si vybrat, zda má být vytvořeno čestné místo." #: ecommerce/static/js/models/course_model.js:77 msgid "The verification deadline must occur AFTER the upgrade deadline." -msgstr "" +msgstr "Termín ověření musí nastat PO termínu upgradu." #: ecommerce/static/js/models/course_model.js:86 msgid "Product validation failed." -msgstr "" +msgstr "Ověření produktu se nezdařilo." #: ecommerce/static/js/models/course_model.js:94 #: ecommerce/static/js/views/dynamic_catalog_view.js:70 msgid "Course ID" -msgstr "" +msgstr "ID kurzu" #: ecommerce/static/js/models/course_model.js:95 msgid "Course Name" -msgstr "" +msgstr "Název kurzu" #: ecommerce/static/js/models/course_model.js:96 #: ecommerce/static/js/views/course_list_view.js:77 msgid "Course Type" -msgstr "" +msgstr "Typ kurzu" #: ecommerce/static/js/models/course_model.js:97 msgid "Verification Deadline" -msgstr "" +msgstr "Uzávěrka ověřování" #: ecommerce/static/js/models/course_model.js:98 msgid "Include Honor Seat" -msgstr "" +msgstr "Zahrnout Čestné místo" #: ecommerce/static/js/models/course_seats/course_seat.js:28 msgid "All course seats must have a price." -msgstr "" +msgstr "Všechna místa v kurzu musí mít cenu." #: ecommerce/static/js/models/course_seats/course_seat.js:45 msgid "Verified seats must have an upgrade deadline." -msgstr "" +msgstr "Ověřená místa musí mít termín upgradu." #: ecommerce/static/js/models/course_seats/course_seat.js:53 msgid "The upgrade deadline must occur BEFORE the verification deadline." -msgstr "" +msgstr "Termín upgradu musí nastat PŘED termínem ověření." #: ecommerce/static/js/models/course_seats/course_seat.js:84 msgid "Verified" -msgstr "" +msgstr "Verifikovaný" #: ecommerce/static/js/models/course_seats/course_seat.js:86 #: ecommerce/static/js/views/course_form_view.js:77 msgid "Credit" -msgstr "" +msgstr "Zápočet" #: ecommerce/static/js/models/course_seats/course_seat.js:89 msgid "Professional" -msgstr "" +msgstr "Profesionální" #: ecommerce/static/js/models/course_seats/course_seat.js:91 msgid "Honor" -msgstr "" +msgstr "Čestný" #: ecommerce/static/js/models/course_seats/course_seat.js:93 msgid "Audit" -msgstr "" +msgstr "Audit" #: ecommerce/static/js/models/course_seats/course_seat.js:101 msgid "Verified Certificate" -msgstr "" +msgstr "Ověřený certifikát" #: ecommerce/static/js/models/course_seats/course_seat.js:105 msgid "Professional Certificate" -msgstr "" +msgstr "Profesní certifikát" #: ecommerce/static/js/models/course_seats/course_seat.js:108 msgid "Honor Certificate" -msgstr "" +msgstr "Čestný certifikát" #: ecommerce/static/js/models/course_seats/course_seat.js:111 msgid "No Certificate" -msgstr "" +msgstr "Žádný certifikát" #: ecommerce/static/js/models/course_seats/credit_seat.js:26 msgid "All credit seats must have a credit provider." -msgstr "" +msgstr "Všechna zápočtová místa musí mít poskytovatele zápočtu." #: ecommerce/static/js/models/course_seats/credit_seat.js:30 msgid "Please select a valid credit provider." -msgstr "" +msgstr "Vyberte platného poskytovatele creditu." #: ecommerce/static/js/models/course_seats/credit_seat.js:39 msgid "All credit seats must designate a number of credit hours." -msgstr "" +msgstr "Na všech zápočtových místech musí být uveden počet zápočtových hodin." #: ecommerce/static/js/models/enterprise_coupon_model.js:18 msgid "This value must be a valid email." -msgstr "" +msgstr "Tato hodnota musí být platný e-mail." #: ecommerce/static/js/pages/basket_page.js:27 msgid "Problem occurred during checkout. Please contact support." -msgstr "" +msgstr "Problém nastal při placení. Kontaktujte prosím podporu." #: ecommerce/static/js/pages/basket_page.js:101 msgid "This field is required" -msgstr "" +msgstr "Toto pole je povinné" #: ecommerce/static/js/pages/basket_page.js:145 msgid "Invalid card number" -msgstr "" +msgstr "neplatné číslo karty" #: ecommerce/static/js/pages/basket_page.js:147 msgid "Unsupported card type" -msgstr "" +msgstr "Nepodporovaný typ karty" #: ecommerce/static/js/pages/basket_page.js:149 msgid "Invalid security number" -msgstr "" +msgstr "Neplatné bezpečnostní číslo" #: ecommerce/static/js/pages/basket_page.js:154 msgid "Invalid month" -msgstr "" +msgstr "Neplatný měsíc" #: ecommerce/static/js/pages/basket_page.js:156 msgid "Invalid year" -msgstr "" +msgstr "Neplatný rok" #: ecommerce/static/js/pages/basket_page.js:158 msgid "Card expired" -msgstr "" +msgstr "Platnost karty vypršela" #: ecommerce/static/js/pages/basket_page.js:474 msgid "" -msgstr "" +msgstr "" #: ecommerce/static/js/pages/basket_page.js:475 msgid "State/Province (required)" -msgstr "" +msgstr "Stát/provincie (povinné)" #: ecommerce/static/js/pages/coupon_create_page.js:12 #: ecommerce/static/js/pages/enterprise_coupon_create_page.js:12 msgid "Create New Coupon" -msgstr "" +msgstr "Vytvořit nový kupón" #: ecommerce/static/js/pages/coupon_detail_page.js:13 #: ecommerce/static/js/pages/enterprise_coupon_detail_page.js:13 msgid "View Coupon" -msgstr "" +msgstr "Zobrazit kupón" #: ecommerce/static/js/pages/coupon_edit_page.js:13 #: ecommerce/static/js/pages/enterprise_coupon_edit_page.js:13 msgid "Edit Coupon" -msgstr "" +msgstr "Upravit kupón" #: ecommerce/static/js/pages/coupon_list_page.js:10 msgid "Coupon Codes" -msgstr "" +msgstr "Kódy kupónů" #: ecommerce/static/js/pages/course_create_page.js:12 msgid "Create New Course" -msgstr "" +msgstr "Vytvořit nový kurz" #: ecommerce/static/js/pages/course_detail_page.js:13 msgid "View Course" -msgstr "" +msgstr "Zobrazit kurz" #: ecommerce/static/js/pages/course_edit_page.js:13 msgid "Edit Course" -msgstr "" +msgstr "Upravit kurz" #: ecommerce/static/js/pages/course_list_page.js:10 msgid "Courses" -msgstr "" +msgstr "Kurzy" #: ecommerce/static/js/pages/enterprise_coupon_list_page.js:10 msgid "Enterprise Coupon Codes" -msgstr "" +msgstr "Kódy podnikových kupónů" #: ecommerce/static/js/pages/offer_page.js:14 msgid "Redeem" -msgstr "" +msgstr "Vykoupit" #: ecommerce/static/js/pages/receipt_page.js:21 msgid "" "Caution! Using the back button on this page may cause you to be charged " "again." -msgstr "" +msgstr "Pozor! Použití tlačítka Zpět na této stránce může způsobit opětovné naúčtování." #. Translators: Do not translate "Apple Pay". #: ecommerce/static/js/payment_processors/cybersource.js:225 msgid "" "Apple Pay is not available at this time. Please try another payment method." -msgstr "" +msgstr "Apple Pay v tuto chvíli není k dispozici. Zkuste prosím jinou platební metodu." #: ecommerce/static/js/payment_processors/cybersource.js:255 msgid "" "An error occurred while processing your payment. You have NOT been charged. " "Please try again, or select another payment method." -msgstr "" +msgstr "Při zpracování vaší platby došlo k chybě. NEBYLY vám účtovány poplatky. Zkuste to znovu nebo vyberte jinou platební metodu." #: ecommerce/static/js/payment_processors/stripe.js:71 msgid "" "An error occurred while attempting to process your payment. You have not " "been charged. Please check your payment details, and try again." -msgstr "" +msgstr "Při pokusu o zpracování vaší platby došlo k chybě. Nebylo vám nic účtováno. Zkontrolujte prosím své platební údaje a zkuste to znovu." #: ecommerce/static/js/payment_processors/stripe.js:110 msgid "An error occurred while processing your payment. Please try again." -msgstr "" +msgstr "Při zpracování vaší platby došlo k chybě. Prosím zkuste to znovu." #: ecommerce/static/js/utils/utils.js:184 msgid "Trailing comma not allowed." -msgstr "" +msgstr "Koncová čárka není povolena." #: ecommerce/static/js/views/coupon_detail_view.js:108 #: ecommerce/static/js/views/coupon_form_view.js:62 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:30 msgid "Can be used once by one customer" -msgstr "" +msgstr "Může být použit jednou jedním zákazníkem" #: ecommerce/static/js/views/coupon_detail_view.js:110 #: ecommerce/static/js/views/coupon_form_view.js:70 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:38 msgid "Can be used multiple times by multiple customers" -msgstr "" +msgstr "Může být použit vícekrát více zákazníky" #: ecommerce/static/js/views/coupon_detail_view.js:112 #: ecommerce/static/js/views/coupon_form_view.js:66 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:34 msgid "Can be used once by multiple customers" -msgstr "" +msgstr "Může být použit jednou pro více zákazníků" #: ecommerce/static/js/views/coupon_form_view.js:51 msgid "Enrollment Code" -msgstr "" +msgstr "Přihlašovací kód" #: ecommerce/static/js/views/coupon_form_view.js:55 msgid "Discount Code" -msgstr "" +msgstr "Slevový kód" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" -msgstr "" +msgstr "Uložit změny" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" -msgstr "" +msgstr "Vytvořit kupón" #: ecommerce/static/js/views/coupon_list_view.js:35 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:24 msgid "Name" -msgstr "" +msgstr "Jméno" #: ecommerce/static/js/views/coupon_list_view.js:42 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:31 msgid "Created" -msgstr "" +msgstr "Vytvořeno" #: ecommerce/static/js/views/coupon_list_view.js:49 msgid "Custom Code" -msgstr "" +msgstr "Vlastní kód" #: ecommerce/static/js/views/coupon_list_view.js:55 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:44 msgid "Client" -msgstr "" +msgstr "Klient" #: ecommerce/static/js/views/coupon_list_view.js:61 msgid "Category" -msgstr "" +msgstr "Kategorie" #: ecommerce/static/js/views/coupon_list_view.js:67 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:62 msgid "Coupon Report" -msgstr "" +msgstr "Zpráva o kuponu" #: ecommerce/static/js/views/coupon_list_view.js:80 #: ecommerce/static/js/views/course_list_view.js:25 msgid "Search..." -msgstr "" +msgstr "Vyhledávání..." #: ecommerce/static/js/views/coupon_list_view.js:107 #: ecommerce/static/js/views/course_list_view.js:52 msgid "Next" -msgstr "" +msgstr "Další" #: ecommerce/static/js/views/coupon_list_view.js:108 #: ecommerce/static/js/views/course_list_view.js:53 msgid "Previous" -msgstr "" +msgstr "Předchozí" #. Translators: _START_, _END_, and _TOTAL_ are placeholders. Do NOT translate #. them. #: ecommerce/static/js/views/coupon_list_view.js:112 msgid "Displaying _START_ to _END_ of _TOTAL_ coupons" -msgstr "" +msgstr "Zobrazují se _START_ až _END_ z _TOTAL_ kuponů" #. Translators: _MAX_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/coupon_list_view.js:115 msgid "(filtered from _MAX_ total coupons)" -msgstr "" +msgstr "(filtrováno z celkového počtu _MAX_ kuponů)" #. Translators: _MENU_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/coupon_list_view.js:118 msgid "Display _MENU_ coupons" -msgstr "" +msgstr "Zobrazit kupóny _MENU_" #: ecommerce/static/js/views/course_form_view.js:55 msgid "Free (Audit)" -msgstr "" +msgstr "Zdarma (audit)" #: ecommerce/static/js/views/course_form_view.js:56 msgid "Free audit track. No certificate." -msgstr "" +msgstr "Bezplatná auditní stopa. Žádný certifikát." #: ecommerce/static/js/views/course_form_view.js:60 msgid "Verified and Audit" -msgstr "" +msgstr "Ověřeno a auditováno" #: ecommerce/static/js/views/course_form_view.js:61 #: ecommerce/static/js/views/course_form_view.js:67 msgid "" "Paid certificate track with initial verification and Verified Certificate." -msgstr "" +msgstr "Placená certifikační dráha s prvotním ověřením a ověřeným certifikátem." #: ecommerce/static/js/views/course_form_view.js:62 msgid "Also includes the free audit track." -msgstr "" +msgstr "Zahrnuje také bezplatnou auditní dráhu." #: ecommerce/static/js/views/course_form_view.js:66 msgid "Verified Only" -msgstr "" +msgstr "Pouze ověřené" #: ecommerce/static/js/views/course_form_view.js:71 msgid "Professional Education" -msgstr "" +msgstr "Profesní vzdělání" #: ecommerce/static/js/views/course_form_view.js:72 msgid "" "Paid certificate track with initial verification and Professional Education " "Certificate" -msgstr "" +msgstr "Placená certifikační trasa s počátečním ověřením a certifikátem profesního vzdělání" #: ecommerce/static/js/views/course_form_view.js:78 msgid "" "Paid certificate track with initial verification and Verified Certificate, " "and option to purchase credit" -msgstr "" +msgstr "Placená certifikační trasa s prvotním ověřením a ověřeným certifikátem a možností nákupu zápočtu" #. Translators: _START_, _END_, and _TOTAL_ are placeholders. Do NOT translate #. them. #: ecommerce/static/js/views/course_list_view.js:57 msgid "Displaying _START_ to _END_ of _TOTAL_ courses" -msgstr "" +msgstr "Zobrazeno _START_ až _END_ z _TOTAL_ kurzů" #. Translators: _MAX_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/course_list_view.js:60 msgid "(filtered from _MAX_ total courses)" -msgstr "" +msgstr "(filtrováno z celkového počtu _MAX_ kurzů)" #. Translators: _MENU_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/course_list_view.js:63 msgid "Display _MENU_ courses" -msgstr "" +msgstr "Zobrazit _MENU_ kurzy" #: ecommerce/static/js/views/course_list_view.js:69 msgid "Course" -msgstr "" +msgstr "Kurz" #: ecommerce/static/js/views/course_list_view.js:86 msgid "Last Edited" -msgstr "" +msgstr "Naposledy upraveno" #: ecommerce/static/js/views/dynamic_catalog_view.js:74 msgid "Seat title" -msgstr "" +msgstr "Název místa" #: ecommerce/static/js/views/dynamic_catalog_view.js:78 msgid "Seat type" -msgstr "" +msgstr "Typ místa" #: ecommerce/static/js/views/enterprise_coupon_detail_view.js:28 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:42 msgid "Can be used multiple times by one customer" -msgstr "" +msgstr "Může být použit vícekrát jedním zákazníkem" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" -msgstr "" +msgstr "Vytvořit a přidat další" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:38 msgid "Status" -msgstr "" +msgstr "Stav" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:50 msgid "Enterprise Customer" -msgstr "" +msgstr "Podnikový zákazník" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:56 msgid "Enterprise Customer Catalog" -msgstr "" +msgstr "Katalog podnikových zákazníků" #: ecommerce/static/js/views/form_view.js:71 msgid "A course with the specified ID already exists." -msgstr "" +msgstr "Kurz se zadaným ID již existuje." #: ecommerce/static/js/views/form_view.js:81 #: ecommerce/static/js/views/form_view.js:174 msgid "Error!" -msgstr "" +msgstr "Chyba!" #: ecommerce/static/js/views/form_view.js:127 msgid "Saving..." -msgstr "" +msgstr "Ukládání..." #: ecommerce/static/js/views/form_view.js:136 msgid "Please complete all required fields." -msgstr "" +msgstr "Prosím, vyplňte všechna požadovaná pole." #: ecommerce/static/js/views/form_view.js:161 msgid "An error occurred while saving the data." -msgstr "" +msgstr "Při ukládání dat došlo k chybě." #: ecommerce/static/js/views/offer_view.js:198 msgid "Ellipsis" -msgstr "" +msgstr "Elipsa" #: ecommerce/static/js/views/offer_view.js:205 msgid "Load the records for page " -msgstr "" +msgstr "Načtěte záznamy pro stránku" #: ecommerce/static/js/views/offer_view.js:212 msgid "Load the records for the next page" -msgstr "" +msgstr "Načtěte záznamy pro další stránku" #: ecommerce/static/js/views/offer_view.js:220 msgid "Load the records for the previous page" -msgstr "" +msgstr "Načtěte záznamy pro předchozí stránku" #: ecommerce/static/js/views/provider_selection_view.js:33 msgid "Select" -msgstr "" +msgstr "Vybrat" #: ecommerce/static/js/views/provider_selection_view.js:34 msgid "Selected" -msgstr "" +msgstr "Vybraný" #: ecommerce/static/vendor-extensions/oscar/js/order_actions.js:21 msgid "Order %(order_number)s has been fulfilled." -msgstr "" +msgstr "Objednávka %(order_number)s byla splněna." #: ecommerce/static/vendor-extensions/oscar/js/order_actions.js:27 msgid "Failed to fulfill order %(order_number)s: %(error)s" -msgstr "" +msgstr "Objednávku se nepodařilo splnit %(order_number)s: %(error)s" #: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:24 msgid "Refund #%(refund_id)s has been processed." -msgstr "" +msgstr "Vrácení peněz #%(refund_id)s bylo zpracováno." #: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:33 msgid "Error" -msgstr "" +msgstr "Chyba" #: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:36 msgid "" "Failed to process refund #%(refund_id)s: %(error)s. Please try again, or " "contact the E-Commerce Development Team." -msgstr "" +msgstr "Nepodařilo se zpracovat refundaci #%(refund_id)s: %(error)s. Zkuste to prosím znovu nebo kontaktujte tým pro vývoj elektronického obchodu." diff --git a/ecommerce/conf/locale/cy/LC_MESSAGES/django.mo b/ecommerce/conf/locale/cy/LC_MESSAGES/django.mo index 61ef9194a71..7dcdb850e2a 100644 Binary files a/ecommerce/conf/locale/cy/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/cy/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/cy/LC_MESSAGES/django.po b/ecommerce/conf/locale/cy/LC_MESSAGES/django.po index edaca095fe4..002fcbdf6c3 100644 --- a/ecommerce/conf/locale/cy/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/cy/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Welsh (http://www.transifex.com/open-edx/edx-platform/language/cy/)\n" +"Language-Team: Welsh (http://app.transifex.com/open-edx/edx-platform/language/cy/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/cy/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/cy/LC_MESSAGES/djangojs.mo index fe8b1aa09cd..1a26f9b3d22 100644 Binary files a/ecommerce/conf/locale/cy/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/cy/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/cy/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/cy/LC_MESSAGES/djangojs.po index e7ceb185299..550d8313d5f 100644 --- a/ecommerce/conf/locale/cy/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/cy/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Welsh (http://www.transifex.com/open-edx/edx-platform/language/cy/)\n" +"Language-Team: Welsh (http://app.transifex.com/open-edx/edx-platform/language/cy/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/da/LC_MESSAGES/django.mo b/ecommerce/conf/locale/da/LC_MESSAGES/django.mo index 13936745f2b..3e4b352708c 100644 Binary files a/ecommerce/conf/locale/da/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/da/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/da/LC_MESSAGES/django.po b/ecommerce/conf/locale/da/LC_MESSAGES/django.po index 7b19344609e..87519802c17 100644 --- a/ecommerce/conf/locale/da/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/da/LC_MESSAGES/django.po @@ -9,14 +9,15 @@ # Translators: # Translators: # Translators: +# Pia Jensen, 2022 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: edx_transifex_bot \n" -"Language-Team: Danish (http://www.transifex.com/open-edx/edx-platform/language/da/)\n" +"Last-Translator: Pia Jensen, 2022\n" +"Language-Team: Danish (http://app.transifex.com/open-edx/edx-platform/language/da/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/da/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/da/LC_MESSAGES/djangojs.mo index b2a2f3a4052..49aeb92c89e 100644 Binary files a/ecommerce/conf/locale/da/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/da/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/da/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/da/LC_MESSAGES/djangojs.po index 45f03d16794..d9f13ad6714 100644 --- a/ecommerce/conf/locale/da/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/da/LC_MESSAGES/djangojs.po @@ -9,14 +9,15 @@ # Translators: # Translators: # Translators: +# Pia Jensen, 2022 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" -"Last-Translator: Transifex Bot <>\n" -"Language-Team: Danish (http://www.transifex.com/open-edx/edx-platform/language/da/)\n" +"Last-Translator: Pia Jensen, 2022\n" +"Language-Team: Danish (http://app.transifex.com/open-edx/edx-platform/language/da/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/de/LC_MESSAGES/django.mo b/ecommerce/conf/locale/de/LC_MESSAGES/django.mo index 1178cead01f..dce183096ed 100644 Binary files a/ecommerce/conf/locale/de/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/de/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/de/LC_MESSAGES/django.po b/ecommerce/conf/locale/de/LC_MESSAGES/django.po index 2240ef78565..7254e485ec3 100644 --- a/ecommerce/conf/locale/de/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/de/LC_MESSAGES/django.po @@ -16,10 +16,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Alexander Gropmann , 2018\n" -"Language-Team: German (http://www.transifex.com/open-edx/edx-platform/language/de/)\n" +"Language-Team: German (http://app.transifex.com/open-edx/edx-platform/language/de/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,332 +48,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -383,43 +383,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -481,150 +481,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -794,41 +804,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -836,39 +846,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -906,84 +917,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1000,7 +1011,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1009,44 +1020,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1112,6 +1123,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1144,23 +1169,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1171,35 +1196,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1249,7 +1274,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1258,14 +1283,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1296,7 +1337,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1378,11 +1419,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1427,7 +1468,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1482,7 +1523,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1818,7 +1859,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1831,38 +1872,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1874,11 +1915,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1889,25 +1930,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2024,89 +2065,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2116,11 +2166,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/de/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/de/LC_MESSAGES/djangojs.mo index fc5db738d5f..42c8bc9aead 100644 Binary files a/ecommerce/conf/locale/de/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/de/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/de/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/de/LC_MESSAGES/djangojs.po index 6dc2df84a99..cdf088e9de8 100644 --- a/ecommerce/conf/locale/de/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/de/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: German (http://www.transifex.com/open-edx/edx-platform/language/de/)\n" +"Language-Team: German (http://app.transifex.com/open-edx/edx-platform/language/de/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/de_AT/LC_MESSAGES/django.mo b/ecommerce/conf/locale/de_AT/LC_MESSAGES/django.mo index c46121547b1..be33adb0b16 100644 Binary files a/ecommerce/conf/locale/de_AT/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/de_AT/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/de_AT/LC_MESSAGES/django.po b/ecommerce/conf/locale/de_AT/LC_MESSAGES/django.po index 1f4d130b93e..c5bee83e2d0 100644 --- a/ecommerce/conf/locale/de_AT/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/de_AT/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: German (Austria) (http://www.transifex.com/open-edx/edx-platform/language/de_AT/)\n" +"Language-Team: German (Austria) (http://app.transifex.com/open-edx/edx-platform/language/de_AT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/de_AT/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/de_AT/LC_MESSAGES/djangojs.mo index 8a2878c0c6d..87a27a9715c 100644 Binary files a/ecommerce/conf/locale/de_AT/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/de_AT/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/de_AT/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/de_AT/LC_MESSAGES/djangojs.po index ea15e3dc535..f71e9b8c926 100644 --- a/ecommerce/conf/locale/de_AT/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/de_AT/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: German (Austria) (http://www.transifex.com/open-edx/edx-platform/language/de_AT/)\n" +"Language-Team: German (Austria) (http://app.transifex.com/open-edx/edx-platform/language/de_AT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/de_DE/LC_MESSAGES/django.mo b/ecommerce/conf/locale/de_DE/LC_MESSAGES/django.mo index be89094123e..a444adf058c 100644 Binary files a/ecommerce/conf/locale/de_DE/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/de_DE/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/de_DE/LC_MESSAGES/django.po b/ecommerce/conf/locale/de_DE/LC_MESSAGES/django.po index 76f2e0d129d..345ed0cb2fc 100644 --- a/ecommerce/conf/locale/de_DE/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/de_DE/LC_MESSAGES/django.po @@ -24,10 +24,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Stefania Trabucchi , 2018,2020-2021\n" -"Language-Team: German (Germany) (http://www.transifex.com/open-edx/edx-platform/language/de_DE/)\n" +"Language-Team: German (Germany) (http://app.transifex.com/open-edx/edx-platform/language/de_DE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -56,332 +56,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "Benutzer Administration wurde deaktiviert. Diese Funktionalität kann über den {switch_name} Waffle switch wieder aktiviert werden. Bitte seien Sie vorsichtig bei der Reaktivierung dieses Switches." -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "LMS base url for custom site/microsite" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "Root URL des LMS dieser Installation (e.g. https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "Pfad zum custom site theme" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Zahlungsverarbeiter" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "KOmma getrennte Liste der processor names: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "Zahlungsverarbeiter des Clients - Client-side payment processor." -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "Processor der für die client-side Zahlungen verwendet wird" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "OAuth Einstellungen" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "JSON string der OAuth backend settings enthält." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "Segment key" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Segment write/API key." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "E-Mail-Absender" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "Absenderadresse von der E-Mails verschickt werden." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Anmeldecodes aktivieren" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Erstellung der Anmeldecodes aktivieren" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "E-Mail für Zahlungssupport" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "Kontakt-E-Mail-Adresse für Unterstützung bei Problemen Zahlungen betreffend." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "URL für Zahlungssupport" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "URL für Probleme beim Zahlungssupport" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "UTM Cookie Name" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "Name of cookie storing UTM data." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "Affiliate Cookie Name" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "Name of cookie storing affiliate data." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "Sende E-Mail-Benachrichtigung für eine Erstattung" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "SDN Prüfung aktivieren" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "SDN Prüfung an der Kasse aktivieren." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "[Deprecated] US Treasury SDN API URL" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "[Deprecated] US Treasury SDN API Schlüssel" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "SDN Listen" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "Eine kommagetrennte Liste der Fiskal OFAC Liste gegen die gerpüft wird." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Die Aktivierung Ihres Benutzerkontos ist erforderlich" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "Es ist erforderlich, dass Teilnehmer ihren Account aktivieren, bevor sie einen Gutschein einlösen können." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "Optimierte Quell-URL" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Das Skript wird auf jeder Seite geladen." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "Base Cookie Domain" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "Base cookie domain zum teilen von cookies über alle Services." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "Aktivieren der Einzugsermächtigung" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "Aktivieren Sie die Einzugsermächtigung an der Kasse." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "Discovery API URL" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "Erlaube Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "Aktivieren Sie einen Teil des Programmangebotes" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "Aktivieren Sie die Applikation der Programmangebote für die verbleibenden nicht-registrierten oder nicht-verifizierten Kurse" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "Hubspot-Portal Geheimschlüssel" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "Geheimschlüssel für die Hubspot-Portal Authentifizierung" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "Mikro Frontend für Warenkorbseite aktivieren" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "Verwenden Sie die Mikro Frontend Implementierung der Warenkorbseite anstelle der serverseitigen Vorlage." -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "Payment Microfrontend URL" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "URL für das Payment Microfrontend (nutzbar wenn das Microfrontend für die Seite des Warenkorbs gesetzt ist)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "Nachname" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" -msgstr "" +msgstr "Vorname" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Vollständiger Name" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "LMS Benutzer ID" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Name" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "Unternehmenskunde UUID" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "UUID for an EnterpriseCustomer from the Enterprise Service." -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "Diesen Gutschein gibt es nicht." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "Dieser Gutschein ist noch nicht gültig" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "Dieser Gutschein ist abgelaufen. " -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "Das Produkt [{product}] ist nicht zum Kauf erhältlich. " -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "Dieser Gutschein ist nicht mehr gültig. " -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "Dieser Gutschein-Code ist ungültig. " -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "Der Gutschein kann für Ihren aktuellen Warenkorb nicht genutzt werden." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Willkommen bei edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "Bitte wählen Sie von den, von Ihrer Organisation vorausgewählten Kursen und starten Sie mit dem Lernen. " -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "Code nicht angegeben." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU nicht angegeben." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "Dieses Produkt gibt es nicht." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Sie sind nicht berechtigt diesen Gutscheincode einzulösen." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "Es konnte kein passender Unternehmenskunde für diesen Gutschein gefunden werden." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "Dieser Gutschein gilt nicht für den Kauf eines Programms. Versuchen Sie den Gutschein für einen einzelnen Kurs im Programm zu verwenden. Wenn Sie Hilfe benötigen, wenden Sie sich an den edX-Support." -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "Ungültiger data sharing consent token angegeben." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "Sie haben bereits einen {course} Platz erworben." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "Ein Rabatt wurde angenommen, mit freundlicher Genehmigung von {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "Dieser Gutschein-Code ist nicht gültig für diesen Kurs. Bitte versuchen Sie diesen bei einem anderen Kurs einzulösen." -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "Seite" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "Letzter Zeitpunkt zu dem eine Verifizierung für dieses Produkt eingereicht werden kann. " @@ -391,45 +391,45 @@ msgstr "Letzter Zeitpunkt zu dem eine Verifizierung für dieses Produkt eingerei msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "Konnte Einkaufsdaten für {course_id} nicht auf dem LMS veröffentlichen. " -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Gasthörer" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Kredit" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Teilnahmemodus" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "professionelles" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Geprüft" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "Ausbildung von Führungskräften" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" -msgstr "" +msgstr "Bezahlte Executive Education" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" -msgstr "" +msgstr "Unbezahlte Executive Education" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" -msgstr "" +msgstr "Bezahltes Bootcamp" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" -msgstr "" +msgstr "Unbezahltes Bootcamp" #: ecommerce/credit/views.py:40 msgid "" @@ -489,150 +489,160 @@ msgid "" "questions." msgstr "Dieser Code ist mit Ihrer E-Mail nicht gültig. Bitte melden Sie sich mit der richtigen E-Mail an, die dem Code zugeordnet ist, oder wenden Sie sich bei weiteren Fragen an Ihren Learning Manager." -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "Unternehmenskunden UUID" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "Unternehmenskunden Katalog UUID" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "Rabatttyp" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "Rabattwert" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "Vertragsrabattart" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "Vertragsrabatt" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "Vorausbezahlter Rechnungsbetrag" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "Salesforce Gelegenheits ID" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "E-Mail-Adressen" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "Durch Komma getrennte E-Mails, die Benachrichtigungen über die Angebotsnutzung erhalten werden" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "Häufigkeit für E-Mails zur Angebotsnutzung" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "Die maximale Anzahl von Einschreibungen, die dieses Angebot einlösen können." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "Der maximale USD-Dollar-Betrag, der durch dieses Angebot eingelöst werden kann." -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "Die maximale Anzahl von Einschreibungen pro Nutzer, die dieses Angebot einlösen können." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "Der maximale USD-Dollar-Betrag, der von einem Benutzer mit diesem Angebot eingelöst werden kann." -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Start-Datum" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Enddatum" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "Aufnahmebeschränkung" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "Buchungsbeschränkung" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "Aufnahmebeschränkung pro Teilnehmer" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "Buchungsbeschränkung pro Teilnehmer" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "Stellen Sie sicher, dass dieser Wert größer gleich des verbrauchten Wertes ({offer_enrollments}) ist." -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." +msgstr "Die Salesforce-Opportunity-ID muss aus 18 alphanumerischen Zeichen bestehen und mit 006 beginnen." + +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "Stellen Sie sicher, dass der Wert größer gleich 0 ist." -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "Stellen Sie sicher, dass dieser Wert größer gleich des verbrauchten Wertes ({consumed_discount:.2f}) ist." -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "{email} ist keine gültige E-Mail-Adresse." -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "Für dieses Unternehmen gibt es bereits ein Angebot & Katalog-Kombination." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "Prozentsätze können nicht größer sein als 100%." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "Bei der Festlegung eines Enddatums muss ein Startdatum angegeben werden" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "Das Startdatum muss vor dem Enddatum gesetzt werden." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "Mehr als 2 Nachkommastellen sind für den Absolutwert nicht zulässig." -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "Dieses Feld ist erforderlich, wenn die Rabattart des Vertrags absolut ist." -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "Rabatt vom Typen {} gewährt durch {} für {}." @@ -802,41 +812,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "Wir konnten nicht genügend Informationen über Sie finden, um die Berechnung durchzuführen." -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "ABGELAUFEN" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "INAKTIV" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "AKTIV" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "Produkte müssen einen Zertifikattyp haben." -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Produkte müssen einen Preis haben." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "Sie müssen eine Kurs-UUID angeben, um Kursberechtigungen zu erstellen." -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "Produkte müssen anzeigen, ob eine ID Verifizierung benötigt wird. " -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "Ungültige Produktklasse [{product_class}] angefordert." -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -844,39 +854,40 @@ msgid "" " been saved." msgstr "Kurs [{course_id}] wurde nicht im LMS veröffentlicht, da die Einstellung [publish_course_modes_to_lms] deaktiviert wurde. Um Geister SKUs zu vermeiden wurden die Eingaben nicht gespeichert." -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Anmeldecode" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Rabattcode" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "Ungültige Bestellnummer oder die Bestellung {} existiert nicht." -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "Zuweisung eines neuen Coupons ist fehlgeschlagen. Fehler: {}" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "Ihre Bestellung {} kann nicht erstattet werden, da '{}'-Coupons für die Erstattung nicht unterstützt werden." -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "Es konnte kein neuer Coupon für die Bestellung {} erstellt werden." #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "Keine SKUs angegeben." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "Produkte mit SKU(s) [{skus}] existieren nicht." @@ -914,84 +925,84 @@ msgstr "Attributtyp" msgid "Text Attribute" msgstr "Textattribut" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "Derzeit können wir den Kurs für Sie nicht freischalten." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "Klicken Sie hier, um eine Einschreibung für sich selbst zu kaufen" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "Hier klicken um mehrere Plätze in diesem Kurs kaufen" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "Gutscheincode '{code}' ist abgelaufen." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "Gutschein Code '{code}' ist nicht aktiv." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "Gutschein Code '{code}' ist nicht verfügbar. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "Gutschein Code '{code}' ist nicht für diesen Kurs gültig." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "Der Gutschein Code '{code}' ist für diesen Warenkorb für einen gebündelten Kauf nicht gültig." -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "Gutscheincode '{code}' zum Warenkorb hinzugefügt." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "Der Warenkorb qualifiziert sich nicht für den Gutscheincode {code}." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "Der folgende Code konnte nicht angewendet werden '{code}'; es bedarf der Zustimmung zum Datenaustausch." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "Nachdem Sie die Bestellung abgeschlossen haben, können Sie die Kursdaten in \"Meine Kurse\" einsehen." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "Nachdem Sie die Bestellung abgeschlossen haben, sind Sie automatisch im verifizierten Lern- Modus." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "Nachdem Sie die Bestellung abgeschlossen haben, erhalten Sie von uns eine Gutschrift für Ihren Kurs." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "Nachdem Sie die Bestellung abgeschlossen haben, sind Sie automatisch in diesem Kurs eingeschrieben." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1008,7 +1019,7 @@ msgid "" "{paragraph_end}" msgstr "{paragraph_start}Mit dem Kauf stimmen Sie und Ihre Organisation den folgenden Bedingungen zu:{paragraph_end} {ul_start} {li_start}Jeder Code ist für den einen abgedeckten Kurs gültig und kann nur einmal verwendet werden.{li_end} {li_start}Sie sind für die Verteilung von Codes an Ihre Lernenden in Ihrer Organisation verantwortlich.{li_end} {li_start}Jeder Code verfällt in einem Jahr ab Kaufdatum oder, falls früher, nach Abschluss des Kurses.{li_end} {li_start}Wenn ein Kurs nicht als Selbstlernkurs gekennzeichnet ist, sollten Sie vor Ablauf bestätigen, dass ein Kurslauf verfügbar ist. {li_end} {li_start}Sie dürfen keine Codes an Dritte weiterverkaufen.{li_end} {li_start}Alle edX for Business Sales sind endgültig und nicht erstattungsfähig.{li_end}{ul_end} {paragraph_start}Sie erhalten eine E-Mail an {user_email} mit Ihren Anmeldecode(s). {paragraph_end}" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1017,44 +1028,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "{strong_start}Erwerb nur für Sie selbst?{strong_end}{paragraph_start}Wenn Sie Single-Code für jemand anderen erwerben möchten, fahren Sie bitte mit der Bestellung fort. Wenn Sie einen Single-Code für sich erwerben möchten, {link_start}gehen Sie zurück{link_end} und schreiben Sie sich direkt ein.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "Sie haben bereits diese Produkte erworben." -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "Es ist kein Produkt zum Kauf verfügbar." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "Menge erfolgreich aktualisiert" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "Dein Warenkorb konnte nicht aktualisiert werden. Bitte korrigieren Sie alle untenstehenden Validierungsfehler." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "Sie haben den Gutschein-Code '{code}' bereits eingegeben." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "Gutscheincode '{code}' existiert nicht." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "Kein Gutschein mit ID '%s' gefunden" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "Gutscheincode '%s' wurde aus Ihrem Warenkorb gelöscht." -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "Letzter Zeitpunkt zu dem dieses Produkt gekauft werden kann. " @@ -1120,6 +1131,20 @@ msgstr "Status" msgid "Failed to retrieve enrollment data." msgstr "Konnte Einschreibungsinformationen nicht abrufen. " +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "Tag 3" @@ -1152,23 +1177,23 @@ msgstr "automatisch" msgid "Manual" msgstr "Handbuch" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "Course Catalog ID from the Discovery Service." -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "UUID für einen Unternehmens-Kunden-Katalog aus dem Unternehmensservice." -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "Unternehmenskunde Name" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "UnternehmenskundeCatalog UUID" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1179,35 +1204,35 @@ msgstr "UnternehmenskundeCatalog UUID" msgid "Program UUID" msgstr "Programm UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "E-Mail an Benutzer ausstehend." -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "Code wurde dem Benutzer erfolgreich zugewiesen." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "Der Code wurde vom Benutzer eingelöst." -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "E-Mail an den Benutzer wurde zurückgewiesen." -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "Der Code wurde für diesen Benutzer widerrufen." -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "Aktivieren Sie eine bestimmte Vorlagenversion." -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "E-Mail wurde gesendet." -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "Diese Teilnehmer sollte eine E-Mail bekommen." @@ -1257,7 +1282,7 @@ msgstr "Klicken Sie auf \"Speichern und fortfahren\", um weiter einzukaufen." msgid "Partner" msgstr "Partner" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Partner" @@ -1266,14 +1291,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "Diners" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Entdecken " -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "JCB" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "UnionPay" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "Unbekannt" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1304,7 +1345,7 @@ msgstr "Ich kaufe im Namen meines Arbeitgebers oder einer anderen professionelle #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "Es ist ein Problem beim Aufrufen Ihres Einkaufswagens aufgetreten. Bitte laden Sie die Seite noch einmal." @@ -1386,11 +1427,11 @@ msgstr "Prozentsatz größer als 100 nicht erlaubt." #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "Transaktion abgelehnt" @@ -1435,7 +1476,7 @@ msgid "Line Credit (excl. tax)" msgstr "Gesamtbetrag (exkl. Steuern)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1490,7 +1531,7 @@ msgstr "Bezahlt" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1748,7 +1789,7 @@ msgstr "Es besteht bereits ein Angebot für dieses Programm." #: ecommerce/programs/forms.py:90 #, python-brace-format msgid "{current_date} Discount for the {program_title} {program_type} Program" -msgstr "" +msgstr "{current_date} Rabatt für das Programm {program_title} {program_type}" #: ecommerce/programs/templates/programs/programoffer_form.html:9 #, python-format @@ -1826,7 +1867,7 @@ msgstr "UTM Inhalt" msgid "UTM Created At" msgstr "UTM erstellt bei" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1839,38 +1880,38 @@ msgstr "UTM erstellt bei" msgid "Dashboard" msgstr "Meine Kurse" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Katalog" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Produkte" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Produktarten" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Kategorien" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Bereiche" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Alarm bei niedriger Bestandsmenge" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Ausführung" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1882,11 +1923,11 @@ msgstr "Ausführung" msgid "Orders" msgstr "Bestellungen" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Statistiken" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1897,25 +1938,25 @@ msgstr "Statistiken" msgid "Refunds" msgstr "Rückerstattungen" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Kunden" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Alarm bei Bestandsmengenanfragen" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "Angebote" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "Gutscheine" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Meldungen" @@ -2032,89 +2073,98 @@ msgid "" "you can print this page." msgstr "Ihre Bestellung ist abgeschlossen. Sie bekommen eine Bestätigung mit Ihrem Anmeldecode(s) auf {link_start}{email}{link_end} zugeschickt. Sollten Sie eine Rechnung benötigen, können Sie diese Seite ausdrucken." -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "Ihre Bestellung ist abgeschlossen. Wenn Sie eine Quittung benötigen, können Sie diese Seite ausdrucken. {next_start} Nächste Schritte:{next_end} 1. Überprüfen Sie Ihren Posteingang auf eine Bestellbestätigungs-E-Mail von Get Smarter.{next_line} 2: Folgen Sie den Anweisungen in der E-Mail, um Ihre Registrierung abzuschließen." + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." -msgstr "" +msgstr "Ihre Bestellung ist abgeschlossen. Wenn Sie eine Quittung benötigen, können Sie diese Seite ausdrucken." -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "Bestellnummer:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "Zahlungsmethode:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "Bestelldatum:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "Bestellinformation" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Beschreibung" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "Einzelpreis Komponente" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Menge:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "Beschreibung:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "Einzelpreis Komponente:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "Gesamtsumme" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "%(voucher_discount_amount)s weniger" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "Rabatt vom Typen %(type)s gewährt durch %(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "Rabatt für Ihr erstes Upgrade" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "Rabatt vom Typen %(type)s wurde gewährt." -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "Mit freundlicher Genehmigung von %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Gesamt" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "Erhalten Sie Ihr Kurs-Credit" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2124,11 +2174,11 @@ msgid "" " course name." msgstr "Um akademische Credits für diesen Kurs zu erhalten, müssen Sie bei der Organisation, die die Credits anbietet, einen Antrag auf Credits stellen. Sie finden einen Link zur Website der Organisation auf Ihrer {link_start}{lms_dashboard_url}{link_middle}Übersicht{link_end}, neben dem Kursnamen." -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "Gehe zur 'Meine Kurse' Übersicht" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "Mehr Kurse entdecken" @@ -2335,7 +2385,7 @@ msgid "" " If you attempted to make a purchase, you have not been charged. Return to your {link_start}{link_middle}{homepage_url}dashboard{link_end} to try\n" " again, or {link_start}{homepage_url}{link_middle}contact {platform_name} Support{link_end}.\n" " " -msgstr "" +msgstr "\n Wenn Sie versucht haben, einen Kauf zu tätigen, wurden Ihnen keine Gebühren berechnet. Kehren Sie zurück zu Ihrer {link_start}{link_middle}{homepage_url}Übersicht{link_end}, um es erneut\n zu versuchen oder {link_start}{homepage_url}{link_middle}kontaktieren Sie den {platform_name} Support{link_end}.\n " #: ecommerce/templates/oscar/basket/messages/new_total.html:7 msgid "Your basket is now empty" @@ -2538,7 +2588,7 @@ msgstr "Gutschein einlösen" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:164 #, python-format msgid "Checkout with %(title)s" -msgstr "" +msgstr "Kasse mit %(title)s" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:166 msgid "Checkout" diff --git a/ecommerce/conf/locale/de_DE/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/de_DE/LC_MESSAGES/djangojs.mo index e82f0c0b03e..929ac9b85f3 100644 Binary files a/ecommerce/conf/locale/de_DE/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/de_DE/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/de_DE/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/de_DE/LC_MESSAGES/djangojs.po index 68bdc0b9461..80c15043af7 100644 --- a/ecommerce/conf/locale/de_DE/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/de_DE/LC_MESSAGES/djangojs.po @@ -22,10 +22,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Stefania Trabucchi , 2021\n" -"Language-Team: German (Germany) (http://www.transifex.com/open-edx/edx-platform/language/de_DE/)\n" +"Language-Team: German (Germany) (http://app.transifex.com/open-edx/edx-platform/language/de_DE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -324,11 +324,11 @@ msgstr "Einschreibungscode" msgid "Discount Code" msgstr "Gutschein-Code" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Änderungen speichern" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Erstelle Gutschein" @@ -470,7 +470,7 @@ msgstr "Teilnahmeart" msgid "Can be used multiple times by one customer" msgstr "Kann von einem Kunden mehrfach verwendet werden" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "Erstellen und weitere hinzufügen" diff --git a/ecommerce/conf/locale/el/LC_MESSAGES/django.mo b/ecommerce/conf/locale/el/LC_MESSAGES/django.mo index 060a01bb6b9..4f5aed6e5fd 100644 Binary files a/ecommerce/conf/locale/el/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/el/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/el/LC_MESSAGES/django.po b/ecommerce/conf/locale/el/LC_MESSAGES/django.po index d95eb66e522..cb66adeb2be 100644 --- a/ecommerce/conf/locale/el/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/el/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ # Translators: # Translators: # Translators: -# Angelos Chraniotis, 2016 +# Angelos Chraniotis, 2016,2023 # Chris Nikolo , 2016 # Eirini Mageiropoulou , 2021 # Foteini T. , 2015 @@ -24,10 +24,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: LOUKAS SKOUROLIAKOS, 2021\n" -"Language-Team: Greek (http://www.transifex.com/open-edx/edx-platform/language/el/)\n" +"Last-Translator: Angelos Chraniotis, 2016,2023\n" +"Language-Team: Greek (http://app.transifex.com/open-edx/edx-platform/language/el/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -56,332 +56,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Ονοματεπώνυμο" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -391,43 +391,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -489,150 +489,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Ημερομηνία Έναρξης" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -802,41 +812,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -844,39 +854,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -914,84 +925,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1008,7 +1019,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1017,44 +1028,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1120,6 +1131,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1152,23 +1177,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1179,35 +1204,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1257,7 +1282,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1266,14 +1291,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1304,7 +1345,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1386,11 +1427,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1435,7 +1476,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1490,7 +1531,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1826,7 +1867,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1839,38 +1880,38 @@ msgstr "" msgid "Dashboard" msgstr "Μαθήματα" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1882,11 +1923,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1897,25 +1938,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Αναφορές" @@ -2032,89 +2073,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Σύνολο" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2124,11 +2174,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/el/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/el/LC_MESSAGES/djangojs.mo index 2db24bdbd6b..172207c659d 100644 Binary files a/ecommerce/conf/locale/el/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/el/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/el/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/el/LC_MESSAGES/djangojs.po index 1ef98a6e500..09f7fa5e722 100644 --- a/ecommerce/conf/locale/el/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/el/LC_MESSAGES/djangojs.po @@ -9,7 +9,7 @@ # Translators: # Translators: # Translators: -# Angelos Chraniotis, 2016 +# Angelos Chraniotis, 2016,2023 # Dimitris Agelakis , 2019 # Evdokia , 2016 # Giannoulis Thanasis , 2015 @@ -20,10 +20,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" -"Last-Translator: Dimitris Agelakis , 2019\n" -"Language-Team: Greek (http://www.transifex.com/open-edx/edx-platform/language/el/)\n" +"Last-Translator: Angelos Chraniotis, 2016,2023\n" +"Language-Team: Greek (http://app.transifex.com/open-edx/edx-platform/language/el/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -322,11 +322,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -468,7 +468,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/el_GR/LC_MESSAGES/django.mo b/ecommerce/conf/locale/el_GR/LC_MESSAGES/django.mo index 3f7a7864148..79cff2ad5ae 100644 Binary files a/ecommerce/conf/locale/el_GR/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/el_GR/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/el_GR/LC_MESSAGES/django.po b/ecommerce/conf/locale/el_GR/LC_MESSAGES/django.po index 60f791ae502..9ee2a0ddbe4 100644 --- a/ecommerce/conf/locale/el_GR/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/el_GR/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Greek (Greece) (http://www.transifex.com/open-edx/edx-platform/language/el_GR/)\n" +"Language-Team: Greek (Greece) (http://app.transifex.com/open-edx/edx-platform/language/el_GR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/el_GR/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/el_GR/LC_MESSAGES/djangojs.mo index f3c8eb83dce..00ad15d35d6 100644 Binary files a/ecommerce/conf/locale/el_GR/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/el_GR/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/el_GR/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/el_GR/LC_MESSAGES/djangojs.po index ba76b0e0878..51da9b0fecd 100644 --- a/ecommerce/conf/locale/el_GR/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/el_GR/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Greek (Greece) (http://www.transifex.com/open-edx/edx-platform/language/el_GR/)\n" +"Language-Team: Greek (Greece) (http://app.transifex.com/open-edx/edx-platform/language/el_GR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/en_GB/LC_MESSAGES/django.mo b/ecommerce/conf/locale/en_GB/LC_MESSAGES/django.mo index eb2d0f7ed22..e84ec04c460 100644 Binary files a/ecommerce/conf/locale/en_GB/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/en_GB/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/en_GB/LC_MESSAGES/django.po b/ecommerce/conf/locale/en_GB/LC_MESSAGES/django.po index 993c4ee13a2..2ba47ba7bdb 100644 --- a/ecommerce/conf/locale/en_GB/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/en_GB/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: English (United Kingdom) (http://www.transifex.com/open-edx/edx-platform/language/en_GB/)\n" +"Language-Team: English (United Kingdom) (http://app.transifex.com/open-edx/edx-platform/language/en_GB/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/en_GB/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/en_GB/LC_MESSAGES/djangojs.mo index fd11de97198..a4e1ad1b575 100644 Binary files a/ecommerce/conf/locale/en_GB/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/en_GB/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/en_GB/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/en_GB/LC_MESSAGES/djangojs.po index e897863cde3..32b98b957b4 100644 --- a/ecommerce/conf/locale/en_GB/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/en_GB/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: English (United Kingdom) (http://www.transifex.com/open-edx/edx-platform/language/en_GB/)\n" +"Language-Team: English (United Kingdom) (http://app.transifex.com/open-edx/edx-platform/language/en_GB/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/es/LC_MESSAGES/django.mo b/ecommerce/conf/locale/es/LC_MESSAGES/django.mo index 585ba79252b..8d46c335ad8 100644 Binary files a/ecommerce/conf/locale/es/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/es/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/es/LC_MESSAGES/django.po b/ecommerce/conf/locale/es/LC_MESSAGES/django.po index 6a288cdce76..41296bdb46f 100644 --- a/ecommerce/conf/locale/es/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/es/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Spanish (http://www.transifex.com/open-edx/edx-platform/language/es/)\n" +"Language-Team: Spanish (http://app.transifex.com/open-edx/edx-platform/language/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/es/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/es/LC_MESSAGES/djangojs.mo index 7092d0f9c54..2bdfeafa52f 100644 Binary files a/ecommerce/conf/locale/es/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/es/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/es/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/es/LC_MESSAGES/djangojs.po index d21cad8ab3d..03f2934ff06 100644 --- a/ecommerce/conf/locale/es/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/es/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Spanish (http://www.transifex.com/open-edx/edx-platform/language/es/)\n" +"Language-Team: Spanish (http://app.transifex.com/open-edx/edx-platform/language/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/es_419/LC_MESSAGES/django.mo b/ecommerce/conf/locale/es_419/LC_MESSAGES/django.mo index 5eb44137b93..13b36d37912 100644 Binary files a/ecommerce/conf/locale/es_419/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/es_419/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/es_419/LC_MESSAGES/django.po b/ecommerce/conf/locale/es_419/LC_MESSAGES/django.po index 4a6cac1c177..0bdade9c344 100644 --- a/ecommerce/conf/locale/es_419/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/es_419/LC_MESSAGES/django.po @@ -20,7 +20,7 @@ # Elias Estay , 2015 # Ernesto Franz Achá Mamani , 2015 # cd9286f57f670f958e9ca68dc8932c77_3ee8733 <1bb171e43a612ed0554a26201b02c19f_497214>, 2016 -# Jesica Greco, 2022 +# Jesica Greco, 2022-2023 # Juan Camilo Montoya Franco , 2015-2018,2020-2021 # Laura Silva , 2016 # Luis Manuel Moreno , 2019 @@ -33,10 +33,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Jesica Greco, 2022\n" -"Language-Team: Spanish (Latin America) (http://www.transifex.com/open-edx/edx-platform/language/es_419/)\n" +"Last-Translator: Jesica Greco, 2022-2023\n" +"Language-Team: Spanish (Latin America) (http://app.transifex.com/open-edx/edx-platform/language/es_419/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -65,332 +65,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "La administración de usuarios fue deshabilitada debido a la carga en la base de datos. Esta función puede ser restablecida activando el {switch_name} interruptor Waffle . Sea cuidadoso cuando reactive el interruptor.!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "URL base del LMS para el site o microsite" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "URL raíz del LMS. (Ej: https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "Ruta para personalizar el tema del sitio" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Procesadores de pagos" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "Lista separada con comas de nombres de procesadores: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "Procesador de pagos del lado del cliente" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "Procesador que será utilizado para los pagos del lado del cliente" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "Configuración OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "Cadena JSON que contiene la configuración para el backend de OAuth" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "Clave de segmento" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Segment write/API key." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "De correo electrónico" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "Dirección de la cual los correos electrónicos se envían." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Habilitar códigos de inscripción" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Habilitar la creación de códigos de inscripción." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "Correo electrónico de soporte para pagos" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "Correo de contacto para asuntos relacionados con soporte a pagos." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "URL de soporte a pagos" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "URL para asuntos de soporte a pagos" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "Nombre de Cookie UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "Nombre del cookie que contiene datos UTM" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "Nombre de Cookie afiliado" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "Nombre de la cookie que almacena datos de afiliado" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "Enviar notificación de reembolso por email" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "Habilitación SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "Habilitar verificación SDN en el momento del pago." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "[Deprecated] url de la API SDN del Tesoro de los estados Unidos" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "[Deprecated] llave de la API SDN del Tesoro de los estados Unidos" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "Listas SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "Lista separada por comas de las listas OFAC que se usarán para la verificación." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Solicita la activación de la cuenta" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "Solicita a los usuarios que activen su cuenta antes de permitirles canjear un cupón." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "Fragmento de código de URL de origen de Optimizely" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Este script se cargará en cada página." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "Dominio de cookie de base" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "Dominio de cookie de base utilizado para compartir cookies en todos los servicios." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "Habilitar verificación de embargo" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "Habilitar verificación de embargo en el pago." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "URL de la API de descubrimiento" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "Habilitar Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "Habilitar Oferta parcial del programa" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "Habilitar la aplicación de ofertas de programa para cursos que permanecen desinscritos o no verificados." -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "Clave secreta para el portal Hubspot" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "Clave secreta para el portal de autenticación de Hubspot" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "habilitar Microfrontend  para la página de pagos" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "Usar la implementación microfrontend de la página de e-commerce en lugar de la plantilla del lado del servidor." -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "Microfrontend de la url de pagos." -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "url pra el Microfrontend de pagos (usado si habilitar Microfrontend para página de pagos está establecido)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "Apellido" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "primer nombre" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Nombre Completo" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "ID del usuario LMS" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Nombre" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "cliente empresarial UUID" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "UUID de un EnterpriseCustomer en el servicio de Clientes empresariales" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "El cupón no existe." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "Este código de cupón aún no es válido." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "Este código de cupón ha expirado." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "El producto [{product}] no está disponible para compra." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "Este código de cupón ya no está disponible." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "Este código de cupón no es válido." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "El voucher no es aplicable a su orden actual." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Bienvenido a edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "Elige entre los cursos seleccionados por tu organización para comenzar a aprender." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "No se suministró un código." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "No se suministró una SKU." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "El producto no existe." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Usted no es elegible para usar este cupón." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "No se ha encontrado ninguna cliente empresarial que coincida para este cupón." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "Este cupón no es válido para comprar un programa. Intente usarlo en un curso individual en el programa. Si necesita ayuda, póngase en contacto con el soporte de edX." -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "El token de consentimiento para compartir datos suministrado es inválido." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "Ya has comprado un asiento para {course}." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "Un descuento ha sido aplicado, cortesía de {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "Este código de cupón no es valido para este curso. Intente en un curso diferente." -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "Sitio" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "Última fecha/hora en que puede ser enviada la verificación para este producto." @@ -400,43 +400,43 @@ msgstr "Última fecha/hora en que puede ser enviada la verificación para este p msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "Falló al publicar los datos de comercio para {course_id} hacia el LMS." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Tomar como asistente" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Crédito" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Honor" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Profesional" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Verificado" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "Formación ejecutiva" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "Educación ejecutiva remunerada" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "Educación ejecutiva no remunerada" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "Bootcamp pago" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "Bootcamp no remunerado" @@ -498,150 +498,160 @@ msgid "" "questions." msgstr "Este código no es válido para su correo. Por favor inicie sesión con el correo correcto asignado al código o contacte su gerente de aprendizaje para preguntas adicionales." -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "cliente empresarial UUID" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "Catálogo cliente empresarial UUID" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "Tipo de descuento" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "Valor del descuento" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "Tipo de descuento de contrato." -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "Descuento de contrato" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "Monto de la comprobante prepago." -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "Id de la Oportunidad en Salesforce" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "Correos electrónicos" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "Correos electrónicos de coma separada los cuales recibirán las ofertas de alerta de uso" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "Frecuencia para correos electrónicos de oferta de uso" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "El número máximo de inscripciones que pueden canjear esta oferta." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "El monto máximo en dólares estadounidenses que puede canjearse por esta oferta." -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "El número máximo de inscripciones por usuario que puede redimir esta oferta." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "La cantidad de dólares estadounidense máxima que puede ser redimida usando esta oferta por usuario." -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Fecha de inicio" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Fecha de finalización" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "Límite de inscripción" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "Límite de reservas" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "Límite de inscripciones por usuario" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "Límite de reservas por usuario" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "Asegúrese de que el nuevo valor sea mayor o igual al valor consumido ({offer_enrollments})." -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "El ID de oportunidad de Salesforce debe tener 18 caracteres alfanuméricos y comenzar con 006." -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "Asegúrese de que este valor sea mayor o igual a 0." -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "El nuevo valor asegurado debe ser mayor que o igual al valor consumido ({consumed_discount:.2f}) " -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "La dirección de correo electrónico {email} no es valida." -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "Ya existe una oferta para esta combinación empresarial y catálogo." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "El porcentaje de los descuentos no puede ser mayor al 100%." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "Se debe especificar una fecha de inicio al especificar una fecha de finalización." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "La fecha de inicio debe ser anterior a la fecha de finalización." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "No se permite más de 2 dígitos después del decimal para el valor absoluto." -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "Este campo es requerido cuando el tipo de descuento de contrato es absoluto." -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "Descuento de tipo {} proporcionado por {} para {}." @@ -811,41 +821,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "No pudimos encontrar suficiente información sobre usted para realizar el cálculo." -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "CADUCADA" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "INACTIVO" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "ACTIVO" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "Los productos deben tener algún tipo de certificado." -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Los productos deben tener un precio" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "Necesitas proporcionar una UUID de curso para crear derechos de curso." -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "Los productos deben indicar si el ID de verificación en requerido" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "Clase de producto inválida [{product_class}] requerida." -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -853,39 +863,40 @@ msgid "" " been saved." msgstr "El curso [{course_id}] no fué publicado hacia el LMS porque el selector [publish_course_modes_to_lms] está desactivado. Para evitar crear SKUs fantasmas, no se ha guardado ninguna información. " -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Código de inscripión" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Cupón de descuento" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "Número de orden inválido u orden {} no existe." -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "Nueva falla de asignación de váucher de cupón. Error: {}" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "Tu orden {} no puede ser reembolsada como '{}' cupones no se encuentran soportados para el reembolso." -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "No pudo crear un nuevo váucher para la orden: {}" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "No se suministraron SKU." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "No hay producto(s) con SKU [{skus}]." @@ -923,84 +934,84 @@ msgstr "Tipo de atributo" msgid "Text Attribute" msgstr "Texto del atributo" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "Debido a los controles de exportación, no podemos permitirle acceder a este curso en este momento." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "Haga clic para comprar un registro a curso" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "Haga clic para comprar multiples asientos para este curso" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "El código de cupón '{code}' ha expirado." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "El código de cupón '{code}' no está activo." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "El código de cupón '{code}' No está disponible. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "El código del cupón '{code}' no es válido para este carrito de compras" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "El código de cupón'{code}' no es válido en esta cesta para una compra en conjunto." -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "Código de cupón '{code}' añadido a la canasta." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "La canasta no califica para el código de cupón {code}." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "No se pudo aplicar el código '{code}'; se requiere el consentimiento para compartir datos." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "Después de completar su orden, podrá seleccionar las fechas del curso desde su panel de control" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "Después de completar su orden será automáticamente inscrito en el modo verificado del curso" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "Después de completar su orden recibirá crédito para su curso" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "Después de completar su orden será automáticamente inscrito en el curso." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1017,7 +1028,7 @@ msgid "" "{paragraph_end}" msgstr "{paragraph_start}Al comprar, usted y su organización aceptan los siguientes términos:{paragraph_end} {ul_start} {li_start}Cada código es válido para el curso cubierto y solo puede usarse una vez.{li_end} {li_start}Usted es responsable de distribuir códigos a sus alumnos en su organización.{li_end} {li_start}Cada código caducará en un año a partir de la fecha de compra o, si es anterior, una vez que se cierre el curso.{li_end} {li_start}Si un curso no es designado como autodidacta, debe confirmar que hay una ejecución del curso disponible antes del vencimiento.{li_end} {li_start}No puede revender códigos a terceros.{li_end} {li_start}Todas las ventas de edX for Business son finales y no son elegibles para devoluciones.{li_end}{ul_end} {paragraph_start}Recibirá un correo electrónico a {user_email} con su(s) códigos de inscripción.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1026,44 +1037,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "{strong_start}¿Comprando solo para ti?{strong_end}{paragraph_start}Si estás comprando para otra persona, por favor continua con el proceso de compra. Sin embardo, si eres el estudiante {link_start}vuelva atrás{link_end} para inscribirte directamente{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "Ya has comprado estos productos" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "No hay ningún producto disponible para comprar." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "cantidad actualizada exitosamente" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "Su canasta no pudo ser actualizada. Por favor corrija cualquier error de validación debajo." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "Usted ya añadió un cupón '{code}' a su canasta." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "El código de cupón '{code}' no existe" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "No se encontró un código de cupón con el id '%s'" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "El código de cupón '%s' fue removido de su cesta." -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "Última fecha/hora en la que este producto puede ser adquirido." @@ -1129,6 +1140,20 @@ msgstr "Estado" msgid "Failed to retrieve enrollment data." msgstr "No fué posible recuperar la información de inscripciones." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "Número de veces para reintentar las acciones del cliente IAP fallidas (por ejemplo, creación de pago, ejecución de pago)" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "ID de transacción original" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "Día 3" @@ -1161,23 +1186,23 @@ msgstr "Automático" msgid "Manual" msgstr "Manual" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "Identificación del catálogo del curso del Servicio Discovery" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "Código UUID para un catálogo de cliente empresarial del servicio empresarial." -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "Nombre de cliente empresarial" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "Catálogo cliente empresarial UUID" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1188,35 +1213,35 @@ msgstr "Catálogo cliente empresarial UUID" msgid "Program UUID" msgstr "UUID del programa" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "Pendiente correo de usuario" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "Código asignado exitosamente al usuario." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "El código ha sido redimido por el usuario." -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "El correo al usuario rebotó." -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "El código ha sido anulado por este usuario." -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "Active una versión de plantilla en particular." -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "El correo electrónico ha sido enviado." -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "Este usuario debería recibir un correo electrónico" @@ -1266,7 +1291,7 @@ msgstr "Click en 'Guardar y Continuar Editando' para añadir registros al invent msgid "Partner" msgstr "Colaborador" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Colaboradores" @@ -1275,14 +1300,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "Diners" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Discover" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "JCB" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "UnionPay" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "Desconocido" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1313,7 +1354,7 @@ msgstr "Estoy comprando a nombre de mi empleador o de otra organización" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "Se ha producido un problema al recuperar su cesta. Actualice la página para intentarlo de nuevo." @@ -1395,11 +1436,11 @@ msgstr "Porcentaje superior a 100 no permitido." #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "Transacción rechazada" @@ -1444,7 +1485,7 @@ msgid "Line Credit (excl. tax)" msgstr "Línea de crédito (excluidos impuestos)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1499,7 +1540,7 @@ msgstr "Redimido" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1835,7 +1876,7 @@ msgstr "Contenido UTM" msgid "UTM Created At" msgstr "UTM creado en" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1848,38 +1889,38 @@ msgstr "UTM creado en" msgid "Dashboard" msgstr "Panel principal" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Catálogo" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Productos" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Tipos de productos" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Categorías " -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Rangos" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Alertas de bajo inventario" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Cumplimiento" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1891,11 +1932,11 @@ msgstr "Cumplimiento" msgid "Orders" msgstr "Órdenes" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Estadísticas" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1906,25 +1947,25 @@ msgstr "Estadísticas" msgid "Refunds" msgstr "Reembolsos" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Clientes" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Solicitud de alerta de inventarios" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "Ofertas" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "Cupones" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Reportes" @@ -2041,89 +2082,98 @@ msgid "" "you can print this page." msgstr "Su orden está completa. Recibirá un mensaje de confirmación y su código(s) de inscripción en {link_start}{email}{link_end}. Si necesita un recibo, puede imprimir esta página." -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "Su pedido está completo. Si necesita un recibo, puede imprimir esta página. {next_start} Próximos pasos:{next_end} 1. Busque en su bandeja de entrada un correo electrónico de confirmación del pedido de Get Smarter.{next_line} 2: Siga las instrucciones del correo electrónico para completar su registro." + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "Se completó su pedido. Si necesita un recibo, puede imprimir esta página." -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "Número de orden:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "Método de pago:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "Fecha de la orden:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "Información de la orden" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Descripción" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "Precio" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Cantidad:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "Descripción:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "Precio del item:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "Subtotal" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "%(voucher_discount_amount)s de descuento" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "Descuento de tipo %(type)s proveído por %(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "Descuento por su primera obtención de un certificado verificado" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "Descuento de tipo %(type)s es brindado." -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "Cortesía de %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Total" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "Obtenga sus créditos de curso" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2133,11 +2183,11 @@ msgid "" " course name." msgstr "Para recibir crédito académico para este curso, debe aplicar por crédito a la organización que ofrece el crédito. Puede encontrar un enlace a la página web de la organización en su{link_start}{lms_dashboard_url}{link_middle}panel principal{link_end} al lado del nombre del curso." -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "Ir al panel principal" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "Encuentra más cursos" diff --git a/ecommerce/conf/locale/es_419/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/es_419/LC_MESSAGES/djangojs.mo index aef19bd1b59..7e3f9a3cf19 100644 Binary files a/ecommerce/conf/locale/es_419/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/es_419/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/es_419/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/es_419/LC_MESSAGES/djangojs.po index 20afea4947c..3a64098e7da 100644 --- a/ecommerce/conf/locale/es_419/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/es_419/LC_MESSAGES/djangojs.po @@ -24,10 +24,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Carolina De Mares , 2021\n" -"Language-Team: Spanish (Latin America) (http://www.transifex.com/open-edx/edx-platform/language/es_419/)\n" +"Language-Team: Spanish (Latin America) (http://app.transifex.com/open-edx/edx-platform/language/es_419/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -326,11 +326,11 @@ msgstr "Código de Inscripción" msgid "Discount Code" msgstr "Cupón de Descuento" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Guardar Cambios" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Crear Cupón" @@ -472,7 +472,7 @@ msgstr "Tipo de asiento" msgid "Can be used multiple times by one customer" msgstr "Puede ser usado múltiples veces por un cliente" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "Crea y agrega más" diff --git a/ecommerce/conf/locale/es_AR/LC_MESSAGES/django.mo b/ecommerce/conf/locale/es_AR/LC_MESSAGES/django.mo index 076068eb008..d8c1dbaf84d 100644 Binary files a/ecommerce/conf/locale/es_AR/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/es_AR/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/es_AR/LC_MESSAGES/django.po b/ecommerce/conf/locale/es_AR/LC_MESSAGES/django.po index eb46bcd2b40..35b4e8ba1bb 100644 --- a/ecommerce/conf/locale/es_AR/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/es_AR/LC_MESSAGES/django.po @@ -10,14 +10,15 @@ # Translators: # Translators: # Eliana Moran , 2016 +# Jesica Greco, 2023 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Eliana Moran , 2016\n" -"Language-Team: Spanish (Argentina) (http://www.transifex.com/open-edx/edx-platform/language/es_AR/)\n" +"Last-Translator: Jesica Greco, 2023\n" +"Language-Team: Spanish (Argentina) (http://app.transifex.com/open-edx/edx-platform/language/es_AR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -26,15 +27,15 @@ msgstr "" #: ecommerce/core/admin.py:25 msgid "Personal info" -msgstr "" +msgstr "Información personal" #: ecommerce/core/admin.py:26 msgid "Permissions" -msgstr "" +msgstr "Permisos" #: ecommerce/core/admin.py:28 msgid "Important dates" -msgstr "" +msgstr "Fechas importantes" #. Translators: "Waffle" is the name of a third-party library. It should not #. be translated @@ -46,332 +47,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" -msgstr "" +msgstr "URL raíz del LMS de este sitio (por ejemplo, https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" -msgstr "" +msgstr "Configuraciones de OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." -msgstr "" +msgstr "Clave de API/escritura de segmento." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" -msgstr "" +msgstr "Nombre completo" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" -msgstr "" +msgstr "Nombre" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,45 +382,45 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" -msgstr "" +msgstr "Auditar" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" -msgstr "" +msgstr "Crédito" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" -msgstr "" +msgstr "Honor" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" -msgstr "" +msgstr "Profesional" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" -msgstr "" +msgstr "Verificado" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" -msgstr "" +msgstr "Educación ejecutiva" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" -msgstr "" +msgstr "Educación ejecutiva remunerada" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" -msgstr "" +msgstr "Educación ejecutiva no remunerada" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" -msgstr "" +msgstr "Campo de entrenamiento pagado" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" -msgstr "" +msgstr "Bootcamp no remunerado" #: ecommerce/credit/views.py:40 msgid "" @@ -456,13 +457,13 @@ msgstr "" #: ecommerce/extensions/payment/models.py:86 ecommerce/invoice/models.py:25 #: ecommerce/programs/constants.py:15 msgid "Percentage" -msgstr "" +msgstr "Porcentaje" #: ecommerce/enterprise/benefits.py:46 #: ecommerce/extensions/payment/models.py:87 #: ecommerce/programs/constants.py:16 msgid "Absolute" -msgstr "" +msgstr "Absoluto" #: ecommerce/enterprise/conditions.py:216 #, python-brace-format @@ -479,156 +480,166 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" -msgstr "" +msgstr "Fecha de inicio" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" -msgstr "" +msgstr "Fecha final" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" #: ecommerce/enterprise/templates/enterprise/enterprise_coupon_app.html:5 msgid "Enterprise Coupon Codes" -msgstr "" +msgstr "Códigos de cupones empresariales" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:9 #, python-format @@ -663,12 +674,12 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/offers/summary.html:30 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:695 msgid "Edit" -msgstr "" +msgstr "Editar" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:36 #: ecommerce/programs/templates/programs/programoffer_form.html:36 msgid "Create" -msgstr "" +msgstr "Crear" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:45 msgid "Edit Enterprise Offer" @@ -684,7 +695,7 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:323 #: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:20 msgid "Cancel" -msgstr "" +msgstr "Cancelar" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:76 #, python-format @@ -707,12 +718,12 @@ msgstr "" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:629 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:681 msgid "Type" -msgstr "" +msgstr "Tipo" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:33 #: ecommerce/programs/templates/programs/programoffer_list.html:32 msgid "Value" -msgstr "" +msgstr "Valor" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:34 #: ecommerce/programs/templates/programs/programoffer_list.html:33 @@ -792,41 +803,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +845,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +916,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." -msgstr "" +msgstr "Después de completar su pedido, podrá seleccionar las fechas del curso desde su panel de control." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." -msgstr "" +msgstr "Después de completar su pedido, se le inscribirá automáticamente en la pista verificada del curso." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." -msgstr "" +msgstr "Después de completar su pedido, recibirá crédito por su curso." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." -msgstr "" +msgstr "Después de completar su pedido, se le inscribirá automáticamente en el curso." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1010,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1019,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1122,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1168,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1195,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1273,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1282,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1336,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1418,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1467,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1522,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1858,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1871,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1914,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1929,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2064,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2165,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/es_AR/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/es_AR/LC_MESSAGES/djangojs.mo index 55565f7d089..942a8d4458b 100644 Binary files a/ecommerce/conf/locale/es_AR/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/es_AR/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/es_AR/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/es_AR/LC_MESSAGES/djangojs.po index b5a22eb4075..7109e50bbba 100644 --- a/ecommerce/conf/locale/es_AR/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/es_AR/LC_MESSAGES/djangojs.po @@ -10,14 +10,15 @@ # Translators: # Translators: # Eliana Moran , 2016 +# Jesica Greco, 2023 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" -"Last-Translator: Eliana Moran , 2016\n" -"Language-Team: Spanish (Argentina) (http://www.transifex.com/open-edx/edx-platform/language/es_AR/)\n" +"Last-Translator: Jesica Greco, 2023\n" +"Language-Team: Spanish (Argentina) (http://app.transifex.com/open-edx/edx-platform/language/es_AR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,520 +28,520 @@ msgstr "" #: ecommerce/static/js/models/coupon_model.js:33 #: ecommerce/static/js/models/enterprise_coupon_model.js:15 msgid "This field is required." -msgstr "" +msgstr "El campo es obligatorio." #: ecommerce/static/js/models/coupon_model.js:34 #: ecommerce/static/js/models/enterprise_coupon_model.js:16 msgid "This value must be a number." -msgstr "" +msgstr "Este valor debe ser un número." #: ecommerce/static/js/models/coupon_model.js:35 #: ecommerce/static/js/models/enterprise_coupon_model.js:17 msgid "This value must be a date." -msgstr "" +msgstr "Este valor debe ser una fecha." #: ecommerce/static/js/models/coupon_model.js:36 msgid "At least one seat type must be selected." -msgstr "" +msgstr "Se debe seleccionar al menos un tipo de asiento." #: ecommerce/static/js/models/coupon_model.js:72 msgid "This field must be empty or contain 1-16 alphanumeric characters." -msgstr "" +msgstr "Este campo de estar vacio o contener de 1-16 caracteres alfanumericos." #: ecommerce/static/js/models/coupon_model.js:81 #, javascript-format msgid "Email domain {%s} is invalid." -msgstr "" +msgstr "El dominio de correo electrónico {%s} no es válido." #: ecommerce/static/js/models/coupon_model.js:98 msgid "Must occur after start date" -msgstr "" +msgstr "Debe ocurrir después de la fecha de inicio" #: ecommerce/static/js/models/coupon_model.js:128 msgid "Max uses for multi-use coupons must be higher than 2." -msgstr "" +msgstr "Los usos máximos para cupones de usos múltiples deben ser superiores a 2." #: ecommerce/static/js/models/coupon_model.js:152 msgid "Must occur before end date" -msgstr "" +msgstr "Debe suceder antes de la fecha de fin." #: ecommerce/static/js/models/coupon_model.js:174 msgid "A valid course ID is required" -msgstr "" +msgstr "Un ID de curso valido es requerido." #: ecommerce/static/js/models/coupon_model.js:188 msgid "A valid Program UUID is required." -msgstr "" +msgstr "Se requiere un UUID de programa válido." #: ecommerce/static/js/models/course_model.js:54 msgid "You must select a course type." -msgstr "" +msgstr "Debes seleccionar un tipo de curso." #: ecommerce/static/js/models/course_model.js:60 msgid "You must choose if an honor seat should be created." -msgstr "" +msgstr "Debe elegir si se debe crear un asiento de honor." #: ecommerce/static/js/models/course_model.js:77 msgid "The verification deadline must occur AFTER the upgrade deadline." -msgstr "" +msgstr "La fecha límite de verificación debe ocurrir DESPUÉS de la fecha límite de actualización." #: ecommerce/static/js/models/course_model.js:86 msgid "Product validation failed." -msgstr "" +msgstr "No se pudo realizar la validación del producto." #: ecommerce/static/js/models/course_model.js:94 #: ecommerce/static/js/views/dynamic_catalog_view.js:70 msgid "Course ID" -msgstr "" +msgstr "ID del curso." #: ecommerce/static/js/models/course_model.js:95 msgid "Course Name" -msgstr "" +msgstr "Nombre del curso." #: ecommerce/static/js/models/course_model.js:96 #: ecommerce/static/js/views/course_list_view.js:77 msgid "Course Type" -msgstr "" +msgstr "Tipo del Curso." #: ecommerce/static/js/models/course_model.js:97 msgid "Verification Deadline" -msgstr "" +msgstr "Fecha límite de verificación" #: ecommerce/static/js/models/course_model.js:98 msgid "Include Honor Seat" -msgstr "" +msgstr "Incluir asiento de honor" #: ecommerce/static/js/models/course_seats/course_seat.js:28 msgid "All course seats must have a price." -msgstr "" +msgstr "Todas las plazas del curso deben tener un precio." #: ecommerce/static/js/models/course_seats/course_seat.js:45 msgid "Verified seats must have an upgrade deadline." -msgstr "" +msgstr "Los asientos verificados deben tener una fecha límite de actualización." #: ecommerce/static/js/models/course_seats/course_seat.js:53 msgid "The upgrade deadline must occur BEFORE the verification deadline." -msgstr "" +msgstr "La fecha límite de actualización debe ocurrir ANTES de la fecha límite de verificación." #: ecommerce/static/js/models/course_seats/course_seat.js:84 msgid "Verified" -msgstr "" +msgstr "Verificado" #: ecommerce/static/js/models/course_seats/course_seat.js:86 #: ecommerce/static/js/views/course_form_view.js:77 msgid "Credit" -msgstr "" +msgstr "Crédito" #: ecommerce/static/js/models/course_seats/course_seat.js:89 msgid "Professional" -msgstr "" +msgstr "Profesional" #: ecommerce/static/js/models/course_seats/course_seat.js:91 msgid "Honor" -msgstr "" +msgstr "Honor" #: ecommerce/static/js/models/course_seats/course_seat.js:93 msgid "Audit" -msgstr "" +msgstr "Auditar" #: ecommerce/static/js/models/course_seats/course_seat.js:101 msgid "Verified Certificate" -msgstr "" +msgstr "Certificado verificado." #: ecommerce/static/js/models/course_seats/course_seat.js:105 msgid "Professional Certificate" -msgstr "" +msgstr "Certificado Profesional." #: ecommerce/static/js/models/course_seats/course_seat.js:108 msgid "Honor Certificate" -msgstr "" +msgstr "Certificado de honor." #: ecommerce/static/js/models/course_seats/course_seat.js:111 msgid "No Certificate" -msgstr "" +msgstr "Sin certificado." #: ecommerce/static/js/models/course_seats/credit_seat.js:26 msgid "All credit seats must have a credit provider." -msgstr "" +msgstr "Todos los asientos de crédito deben tener un proveedor de crédito." #: ecommerce/static/js/models/course_seats/credit_seat.js:30 msgid "Please select a valid credit provider." -msgstr "" +msgstr "Seleccione un proveedor de crédito válido." #: ecommerce/static/js/models/course_seats/credit_seat.js:39 msgid "All credit seats must designate a number of credit hours." -msgstr "" +msgstr "Todos los asientos de crédito deben designar un número de horas de crédito." #: ecommerce/static/js/models/enterprise_coupon_model.js:18 msgid "This value must be a valid email." -msgstr "" +msgstr "Este valor debe ser un correo electrónico válido." #: ecommerce/static/js/pages/basket_page.js:27 msgid "Problem occurred during checkout. Please contact support." -msgstr "" +msgstr "Ocurrió un problema durante el pago. Póngase en contacto con el soporte." #: ecommerce/static/js/pages/basket_page.js:101 msgid "This field is required" -msgstr "" +msgstr "Este campo es obligatorio" #: ecommerce/static/js/pages/basket_page.js:145 msgid "Invalid card number" -msgstr "" +msgstr "Número de tarjeta inválido" #: ecommerce/static/js/pages/basket_page.js:147 msgid "Unsupported card type" -msgstr "" +msgstr "Tipo de tarjeta no compatible" #: ecommerce/static/js/pages/basket_page.js:149 msgid "Invalid security number" -msgstr "" +msgstr "Número de seguridad inválido" #: ecommerce/static/js/pages/basket_page.js:154 msgid "Invalid month" -msgstr "" +msgstr "Mes inválido" #: ecommerce/static/js/pages/basket_page.js:156 msgid "Invalid year" -msgstr "" +msgstr "Año inválido" #: ecommerce/static/js/pages/basket_page.js:158 msgid "Card expired" -msgstr "" +msgstr "Tarjeta vencida" #: ecommerce/static/js/pages/basket_page.js:474 msgid "" -msgstr "" +msgstr "" #: ecommerce/static/js/pages/basket_page.js:475 msgid "State/Province (required)" -msgstr "" +msgstr "Estado/Provincia (requerido)" #: ecommerce/static/js/pages/coupon_create_page.js:12 #: ecommerce/static/js/pages/enterprise_coupon_create_page.js:12 msgid "Create New Coupon" -msgstr "" +msgstr "Crear un cupón nuevo." #: ecommerce/static/js/pages/coupon_detail_page.js:13 #: ecommerce/static/js/pages/enterprise_coupon_detail_page.js:13 msgid "View Coupon" -msgstr "" +msgstr "Ver cupón." #: ecommerce/static/js/pages/coupon_edit_page.js:13 #: ecommerce/static/js/pages/enterprise_coupon_edit_page.js:13 msgid "Edit Coupon" -msgstr "" +msgstr "Editar cupón." #: ecommerce/static/js/pages/coupon_list_page.js:10 msgid "Coupon Codes" -msgstr "" +msgstr "Codigos de cupón." #: ecommerce/static/js/pages/course_create_page.js:12 msgid "Create New Course" -msgstr "" +msgstr "Crear un nuevo curso." #: ecommerce/static/js/pages/course_detail_page.js:13 msgid "View Course" -msgstr "" +msgstr "Ver Curso" #: ecommerce/static/js/pages/course_edit_page.js:13 msgid "Edit Course" -msgstr "" +msgstr "Editar un curso." #: ecommerce/static/js/pages/course_list_page.js:10 msgid "Courses" -msgstr "" +msgstr "Cursos " #: ecommerce/static/js/pages/enterprise_coupon_list_page.js:10 msgid "Enterprise Coupon Codes" -msgstr "" +msgstr "Códigos de cupones empresariales" #: ecommerce/static/js/pages/offer_page.js:14 msgid "Redeem" -msgstr "" +msgstr "Canjear" #: ecommerce/static/js/pages/receipt_page.js:21 msgid "" "Caution! Using the back button on this page may cause you to be charged " "again." -msgstr "" +msgstr "¡Precaución! Si utiliza el botón Atrás de esta página, es posible que se le vuelva a cobrar." #. Translators: Do not translate "Apple Pay". #: ecommerce/static/js/payment_processors/cybersource.js:225 msgid "" "Apple Pay is not available at this time. Please try another payment method." -msgstr "" +msgstr "Apple Pay no está disponible en este momento. Intente con otro método de pago." #: ecommerce/static/js/payment_processors/cybersource.js:255 msgid "" "An error occurred while processing your payment. You have NOT been charged. " "Please try again, or select another payment method." -msgstr "" +msgstr "Ocurrió un error al procesar su pago. NO te han cobrado. Vuelva a intentarlo o seleccione otro método de pago." #: ecommerce/static/js/payment_processors/stripe.js:71 msgid "" "An error occurred while attempting to process your payment. You have not " "been charged. Please check your payment details, and try again." -msgstr "" +msgstr "Ocurrió un error al intentar procesar su pago. No te han cobrado. Verifique los detalles de su pago y vuelva a intentarlo." #: ecommerce/static/js/payment_processors/stripe.js:110 msgid "An error occurred while processing your payment. Please try again." -msgstr "" +msgstr "Ocurrió un error al procesar su pago. Inténtalo de nuevo." #: ecommerce/static/js/utils/utils.js:184 msgid "Trailing comma not allowed." -msgstr "" +msgstr "No se permite la coma final." #: ecommerce/static/js/views/coupon_detail_view.js:108 #: ecommerce/static/js/views/coupon_form_view.js:62 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:30 msgid "Can be used once by one customer" -msgstr "" +msgstr "Puede ser utilizado una vez por un cliente" #: ecommerce/static/js/views/coupon_detail_view.js:110 #: ecommerce/static/js/views/coupon_form_view.js:70 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:38 msgid "Can be used multiple times by multiple customers" -msgstr "" +msgstr "Puede ser utilizado varias veces por varios clientes" #: ecommerce/static/js/views/coupon_detail_view.js:112 #: ecommerce/static/js/views/coupon_form_view.js:66 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:34 msgid "Can be used once by multiple customers" -msgstr "" +msgstr "Puede ser utilizado una vez por múltiples clientes" #: ecommerce/static/js/views/coupon_form_view.js:51 msgid "Enrollment Code" -msgstr "" +msgstr "Código de inscripción" #: ecommerce/static/js/views/coupon_form_view.js:55 msgid "Discount Code" -msgstr "" +msgstr "Código de descuento" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" -msgstr "" +msgstr "Guardar cambios" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" -msgstr "" +msgstr "Crear cupón" #: ecommerce/static/js/views/coupon_list_view.js:35 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:24 msgid "Name" -msgstr "" +msgstr "Nombre" #: ecommerce/static/js/views/coupon_list_view.js:42 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:31 msgid "Created" -msgstr "" +msgstr "Creado" #: ecommerce/static/js/views/coupon_list_view.js:49 msgid "Custom Code" -msgstr "" +msgstr "Código personalizado" #: ecommerce/static/js/views/coupon_list_view.js:55 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:44 msgid "Client" -msgstr "" +msgstr "Cliente" #: ecommerce/static/js/views/coupon_list_view.js:61 msgid "Category" -msgstr "" +msgstr "Categoría" #: ecommerce/static/js/views/coupon_list_view.js:67 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:62 msgid "Coupon Report" -msgstr "" +msgstr "Informe de cupones" #: ecommerce/static/js/views/coupon_list_view.js:80 #: ecommerce/static/js/views/course_list_view.js:25 msgid "Search..." -msgstr "" +msgstr "Buscar..." #: ecommerce/static/js/views/coupon_list_view.js:107 #: ecommerce/static/js/views/course_list_view.js:52 msgid "Next" -msgstr "" +msgstr "Próximo" #: ecommerce/static/js/views/coupon_list_view.js:108 #: ecommerce/static/js/views/course_list_view.js:53 msgid "Previous" -msgstr "" +msgstr "Anterior" #. Translators: _START_, _END_, and _TOTAL_ are placeholders. Do NOT translate #. them. #: ecommerce/static/js/views/coupon_list_view.js:112 msgid "Displaying _START_ to _END_ of _TOTAL_ coupons" -msgstr "" +msgstr "Mostrando del _START_ al _END_ de _TOTAL_ cupones" #. Translators: _MAX_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/coupon_list_view.js:115 msgid "(filtered from _MAX_ total coupons)" -msgstr "" +msgstr "(filtrado de _MAX_ cupones totales)" #. Translators: _MENU_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/coupon_list_view.js:118 msgid "Display _MENU_ coupons" -msgstr "" +msgstr "Mostrar _MENU_ cupones" #: ecommerce/static/js/views/course_form_view.js:55 msgid "Free (Audit)" -msgstr "" +msgstr "Gratis (Auditoría)" #: ecommerce/static/js/views/course_form_view.js:56 msgid "Free audit track. No certificate." -msgstr "" +msgstr "Pista de auditoría gratuita. Sin certificado." #: ecommerce/static/js/views/course_form_view.js:60 msgid "Verified and Audit" -msgstr "" +msgstr "Verificado y auditado" #: ecommerce/static/js/views/course_form_view.js:61 #: ecommerce/static/js/views/course_form_view.js:67 msgid "" "Paid certificate track with initial verification and Verified Certificate." -msgstr "" +msgstr "Seguimiento de certificado pagado con verificación inicial y certificado verificado." #: ecommerce/static/js/views/course_form_view.js:62 msgid "Also includes the free audit track." -msgstr "" +msgstr "También incluye la pista de auditoría gratuita." #: ecommerce/static/js/views/course_form_view.js:66 msgid "Verified Only" -msgstr "" +msgstr "Solo verificado" #: ecommerce/static/js/views/course_form_view.js:71 msgid "Professional Education" -msgstr "" +msgstr "Educación profesional" #: ecommerce/static/js/views/course_form_view.js:72 msgid "" "Paid certificate track with initial verification and Professional Education " "Certificate" -msgstr "" +msgstr "Seguimiento de certificado pagado con verificación inicial y Certificado de educación profesional" #: ecommerce/static/js/views/course_form_view.js:78 msgid "" "Paid certificate track with initial verification and Verified Certificate, " "and option to purchase credit" -msgstr "" +msgstr "Seguimiento de certificado pagado con verificación inicial y certificado verificado, y opción de comprar crédito" #. Translators: _START_, _END_, and _TOTAL_ are placeholders. Do NOT translate #. them. #: ecommerce/static/js/views/course_list_view.js:57 msgid "Displaying _START_ to _END_ of _TOTAL_ courses" -msgstr "" +msgstr "Mostrando del _START_ al _END_ de _TOTAL_ cursos" #. Translators: _MAX_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/course_list_view.js:60 msgid "(filtered from _MAX_ total courses)" -msgstr "" +msgstr "(filtrado de _MAX_ cursos totales)" #. Translators: _MENU_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/course_list_view.js:63 msgid "Display _MENU_ courses" -msgstr "" +msgstr "Mostrar _MENU_ cursos" #: ecommerce/static/js/views/course_list_view.js:69 msgid "Course" -msgstr "" +msgstr "Curso" #: ecommerce/static/js/views/course_list_view.js:86 msgid "Last Edited" -msgstr "" +msgstr "Última edición" #: ecommerce/static/js/views/dynamic_catalog_view.js:74 msgid "Seat title" -msgstr "" +msgstr "Título del asiento" #: ecommerce/static/js/views/dynamic_catalog_view.js:78 msgid "Seat type" -msgstr "" +msgstr "Tipo de asiento" #: ecommerce/static/js/views/enterprise_coupon_detail_view.js:28 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:42 msgid "Can be used multiple times by one customer" -msgstr "" +msgstr "Puede ser utilizado varias veces por un cliente" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" -msgstr "" +msgstr "Crear y agregar más" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:38 msgid "Status" -msgstr "" +msgstr "Estado" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:50 msgid "Enterprise Customer" -msgstr "" +msgstr "Cliente empresarial" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:56 msgid "Enterprise Customer Catalog" -msgstr "" +msgstr "Catálogo de clientes empresariales" #: ecommerce/static/js/views/form_view.js:71 msgid "A course with the specified ID already exists." -msgstr "" +msgstr "Ya existe un curso con el ID especificado." #: ecommerce/static/js/views/form_view.js:81 #: ecommerce/static/js/views/form_view.js:174 msgid "Error!" -msgstr "" +msgstr "Error!" #: ecommerce/static/js/views/form_view.js:127 msgid "Saving..." -msgstr "" +msgstr "Guardando..." #: ecommerce/static/js/views/form_view.js:136 msgid "Please complete all required fields." -msgstr "" +msgstr "Completá todos los campos obligatorios." #: ecommerce/static/js/views/form_view.js:161 msgid "An error occurred while saving the data." -msgstr "" +msgstr "Ocurrió un error mientras se guardaban los datos." #: ecommerce/static/js/views/offer_view.js:198 msgid "Ellipsis" -msgstr "" +msgstr "Elipsis" #: ecommerce/static/js/views/offer_view.js:205 msgid "Load the records for page " -msgstr "" +msgstr "Cargar los registros para la página" #: ecommerce/static/js/views/offer_view.js:212 msgid "Load the records for the next page" -msgstr "" +msgstr "Cargar los registros para la página siguiente" #: ecommerce/static/js/views/offer_view.js:220 msgid "Load the records for the previous page" -msgstr "" +msgstr "Cargar los registros de la página anterior" #: ecommerce/static/js/views/provider_selection_view.js:33 msgid "Select" -msgstr "" +msgstr "Seleccionar" #: ecommerce/static/js/views/provider_selection_view.js:34 msgid "Selected" -msgstr "" +msgstr "Seleccionado" #: ecommerce/static/vendor-extensions/oscar/js/order_actions.js:21 msgid "Order %(order_number)s has been fulfilled." -msgstr "" +msgstr "Se ha cumplido el pedido %(order_number)s." #: ecommerce/static/vendor-extensions/oscar/js/order_actions.js:27 msgid "Failed to fulfill order %(order_number)s: %(error)s" -msgstr "" +msgstr "No se pudo completar el pedido %(order_number)s: %(error)s" #: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:24 msgid "Refund #%(refund_id)s has been processed." -msgstr "" +msgstr "Se ha procesado el reembolso n.º %(refund_id)s." #: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:33 msgid "Error" -msgstr "" +msgstr "Error" #: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:36 msgid "" "Failed to process refund #%(refund_id)s: %(error)s. Please try again, or " "contact the E-Commerce Development Team." -msgstr "" +msgstr "No se pudo procesar el reembolso #%(refund_id)s: %(error)s. Vuelva a intentarlo o póngase en contacto con el equipo de desarrollo de comercio electrónico." diff --git a/ecommerce/conf/locale/es_CL/LC_MESSAGES/django.mo b/ecommerce/conf/locale/es_CL/LC_MESSAGES/django.mo index 2328ee05202..1e5f4de07bb 100644 Binary files a/ecommerce/conf/locale/es_CL/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/es_CL/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/es_CL/LC_MESSAGES/django.po b/ecommerce/conf/locale/es_CL/LC_MESSAGES/django.po index eac84841487..0ceac84a91b 100644 --- a/ecommerce/conf/locale/es_CL/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/es_CL/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Spanish (Chile) (http://www.transifex.com/open-edx/edx-platform/language/es_CL/)\n" +"Language-Team: Spanish (Chile) (http://app.transifex.com/open-edx/edx-platform/language/es_CL/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/es_CL/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/es_CL/LC_MESSAGES/djangojs.mo index 7603e236f42..eadab66c8b1 100644 Binary files a/ecommerce/conf/locale/es_CL/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/es_CL/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/es_CL/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/es_CL/LC_MESSAGES/djangojs.po index 601957f4c8a..598c94962f3 100644 --- a/ecommerce/conf/locale/es_CL/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/es_CL/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Spanish (Chile) (http://www.transifex.com/open-edx/edx-platform/language/es_CL/)\n" +"Language-Team: Spanish (Chile) (http://app.transifex.com/open-edx/edx-platform/language/es_CL/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/es_CO/LC_MESSAGES/django.mo b/ecommerce/conf/locale/es_CO/LC_MESSAGES/django.mo index 427dbe7d2b1..b69807ba0b9 100644 Binary files a/ecommerce/conf/locale/es_CO/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/es_CO/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/es_CO/LC_MESSAGES/django.po b/ecommerce/conf/locale/es_CO/LC_MESSAGES/django.po index 7a133bcf726..d97b6f68a1b 100644 --- a/ecommerce/conf/locale/es_CO/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/es_CO/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Spanish (Colombia) (http://www.transifex.com/open-edx/edx-platform/language/es_CO/)\n" +"Language-Team: Spanish (Colombia) (http://app.transifex.com/open-edx/edx-platform/language/es_CO/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/es_CO/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/es_CO/LC_MESSAGES/djangojs.mo index 44dfe162402..5ff96f6724f 100644 Binary files a/ecommerce/conf/locale/es_CO/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/es_CO/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/es_CO/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/es_CO/LC_MESSAGES/djangojs.po index 1a5ed4e5c3d..8899a1627b5 100644 --- a/ecommerce/conf/locale/es_CO/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/es_CO/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Spanish (Colombia) (http://www.transifex.com/open-edx/edx-platform/language/es_CO/)\n" +"Language-Team: Spanish (Colombia) (http://app.transifex.com/open-edx/edx-platform/language/es_CO/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/es_EC/LC_MESSAGES/django.mo b/ecommerce/conf/locale/es_EC/LC_MESSAGES/django.mo index b6480087850..491740515a2 100644 Binary files a/ecommerce/conf/locale/es_EC/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/es_EC/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/es_EC/LC_MESSAGES/django.po b/ecommerce/conf/locale/es_EC/LC_MESSAGES/django.po index 857442c6256..239e1a5aa84 100644 --- a/ecommerce/conf/locale/es_EC/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/es_EC/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Spanish (Ecuador) (http://www.transifex.com/open-edx/edx-platform/language/es_EC/)\n" +"Language-Team: Spanish (Ecuador) (http://app.transifex.com/open-edx/edx-platform/language/es_EC/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/es_EC/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/es_EC/LC_MESSAGES/djangojs.mo index 3cb4ab4376c..44f3ddf2c43 100644 Binary files a/ecommerce/conf/locale/es_EC/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/es_EC/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/es_EC/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/es_EC/LC_MESSAGES/djangojs.po index c3fd73d2405..f197bdef064 100644 --- a/ecommerce/conf/locale/es_EC/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/es_EC/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Spanish (Ecuador) (http://www.transifex.com/open-edx/edx-platform/language/es_EC/)\n" +"Language-Team: Spanish (Ecuador) (http://app.transifex.com/open-edx/edx-platform/language/es_EC/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/es_ES/LC_MESSAGES/django.mo b/ecommerce/conf/locale/es_ES/LC_MESSAGES/django.mo index b36a37b79c3..3e3a52772a2 100644 Binary files a/ecommerce/conf/locale/es_ES/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/es_ES/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/es_ES/LC_MESSAGES/django.po b/ecommerce/conf/locale/es_ES/LC_MESSAGES/django.po index d827955abb0..797cba878ab 100644 --- a/ecommerce/conf/locale/es_ES/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/es_ES/LC_MESSAGES/django.po @@ -13,6 +13,7 @@ # David Martínez , 2015 # Enrique Ros Carrión , 2016 # Gonzalo Rodrigo Ruiz , 2015 +# Jesica Greco, 2022-2023 # Mariangeles Fernandez , 2015 # Miguel Angel Cordova , 2017 # Stefania Trabucchi , 2018 @@ -22,10 +23,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-14 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: UAMx , 2022\n" -"Language-Team: Spanish (Spain) (http://www.transifex.com/open-edx/edx-platform/language/es_ES/)\n" +"Last-Translator: Jesica Greco, 2022-2023\n" +"Language-Team: Spanish (Spain) (http://app.transifex.com/open-edx/edx-platform/language/es_ES/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -52,332 +53,332 @@ msgid "" "User administration has been disabled due to the load on the database. This " "functionality can be restored by activating the {switch_name} Waffle switch." " Be careful when re-activating this switch!" -msgstr "" +msgstr "La administración de usuarios se ha deshabilitado debido a la carga en la base de datos. Esta funcionalidad se puede restaurar activando el interruptor Waffle {switch_name}. ¡Tenga cuidado al reactivar este interruptor!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" -msgstr "" +msgstr "URL base del LMS para el sitio/micrositio personalizado" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" -msgstr "" +msgstr "URL raíz del LMS de este sitio (por ejemplo, https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" -msgstr "" +msgstr "Ruta al tema del sitio personalizado" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" -msgstr "" +msgstr "Procesadores de pagos" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" -msgstr "" +msgstr "Lista separada por comas de los nombres de procesadores: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" -msgstr "" +msgstr "Procesador de pagos del lado del cliente" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" -msgstr "" +msgstr "Procesador que se utilizará para los pagos del lado del cliente" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" -msgstr "" +msgstr "Ajustes de OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." -msgstr "" +msgstr "Cadena JSON que contiene la configuración de back-end de OAuth." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" -msgstr "" +msgstr "Clave de segmento" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." -msgstr "" +msgstr "Sección principal escritura/API" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" -msgstr "" +msgstr "Desde el e-mail" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." -msgstr "" +msgstr "Dirección desde la cual se envían los correos" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" -msgstr "" +msgstr "Activar códigos de inscripción" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." -msgstr "" +msgstr "Habilitar la creación de códigos de inscripción" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" -msgstr "" +msgstr "Correo electrónico de soporte de pago" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." -msgstr "" +msgstr "Correo electrónico de contacto para problemas de soporte de pago." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" -msgstr "" +msgstr "URL de soporte de pago" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." -msgstr "" +msgstr "URL para problemas de soporte de pago." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" -msgstr "" +msgstr "Nombre de la cookie UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." -msgstr "" +msgstr "Nombre de la cookie que almacena datos UTM." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" -msgstr "" +msgstr "Nombre de la cookie de afiliado" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." -msgstr "" +msgstr "Nombre de la cookie que almacena datos de afiliados." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" -msgstr "" +msgstr "Enviar notificación de reembolso por correo electrónico" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" -msgstr "" +msgstr "Habilitar comprobación de SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." -msgstr "" +msgstr "Habilite la comprobación de SDN al finalizar la compra." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" -msgstr "" +msgstr "[Obsoleto] URL de API de SDN del Tesoro de EE. UU." -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" -msgstr "" +msgstr "[Obsoleto] Clave API SDN del Tesoro de EE. UU." -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" -msgstr "" +msgstr "listas SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." -msgstr "" +msgstr "Una lista separada por comas de las listas OFAC del Tesoro para verificar." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" -msgstr "" +msgstr "Requerir activación de cuenta" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." -msgstr "" +msgstr "Solicite a los usuarios que activen su cuenta antes de permitirles canjear un cupón." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" -msgstr "" +msgstr "URL de origen del fragmento de Optimizely" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." -msgstr "" +msgstr "Este script se cargará en cada página." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" -msgstr "" +msgstr "Dominio base de cookies" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." -msgstr "" +msgstr "Dominio base de cookies utilizado para compartir cookies entre servicios." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" -msgstr "" +msgstr "Habilitar control de embargo" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." -msgstr "" +msgstr "Habilite la comprobación de embargo al finalizar la compra." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" -msgstr "" +msgstr "URL de la API de detección" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" -msgstr "" +msgstr "Habilitar pago de Apple" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" -msgstr "" +msgstr "Habilitar oferta de programa parcial" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" -msgstr "" +msgstr "Habilite la aplicación de ofertas de programas a los cursos restantes no inscritos o no verificados" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" -msgstr "" +msgstr "Clave secreta del portal de Hubspot" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" -msgstr "" +msgstr "Clave secreta para la autenticación del portal de Hubspot" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" -msgstr "" +msgstr "Habilitar microfrontend para la página de la cesta" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" -msgstr "" +msgstr "Use la implementación de microfrontend de la página de la cesta en lugar de la plantilla del lado del servidor" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" -msgstr "" +msgstr "URL de microfrontend de pago" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" -msgstr "" +msgstr "URL para el microfrontend de pago (se usa si se establece Habilitar microfrontend para la página de la cesta)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" -msgstr "" +msgstr "apellido" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" -msgstr "" +msgstr "primer nombre" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Nombre completo" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" -msgstr "" +msgstr "ID de usuario de LMS" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" -msgstr "" +msgstr "Nombre" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" -msgstr "" +msgstr "UUID de cliente empresarial" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." -msgstr "" +msgstr "UUID para un cliente empresarial del servicio empresarial." -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." -msgstr "" +msgstr "Cupón no existe." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." -msgstr "" +msgstr "Este código de cupón ya no es válido." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." -msgstr "" +msgstr "Este cupón ha caducado." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." -msgstr "" +msgstr "El producto [{product}] no está disponible para la compra." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." -msgstr "" +msgstr "Este código de cupón ya no está disponible." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." -msgstr "" +msgstr "Este código de cupón es inválido." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." -msgstr "" +msgstr "El descuento no es aplicable en tu cesta de la compra actual." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" -msgstr "" +msgstr "Bienvenido a edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." -msgstr "" +msgstr "Elija entre los cursos seleccionados por su organización para comenzar a aprender." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." -msgstr "" +msgstr "Código no proporcionado." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." -msgstr "" +msgstr "Código de producto, SKU, no proporcionado." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." -msgstr "" +msgstr "El producto no existe." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." -msgstr "" +msgstr "No eres apto para usar este cupón." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." -msgstr "" +msgstr "No se pudo encontrar un cliente empresarial que coincida con este cupón." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." -msgstr "" +msgstr "Este cupón no es válido para comprar un programa. Intente usar esto en un curso individual en el programa. Si necesita ayuda, comuníquese con el soporte de edX." -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." -msgstr "" +msgstr "Se proporcionó un token de consentimiento para compartir datos no válido." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." -msgstr "" +msgstr "Ya ha comprado el asiento {course}." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." -msgstr "" +msgstr "Se ha aplicado un descuento, cortesía de {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." -msgstr "" +msgstr "Este código de cupón no es válido para este curso. Prueba un curso diferente." #: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" -msgstr "" +msgstr "Sitio" #: ecommerce/courses/models.py:40 msgid "" @@ -387,53 +388,53 @@ msgstr "Última día/hora en que la verificación para este producto puede prese #: ecommerce/courses/publishers.py:62 #, python-brace-format msgid "Failed to publish commerce data for {course_id} to LMS." -msgstr "" +msgstr "No se pudieron publicar los datos comerciales de {course_id} en LMS." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" -msgstr "" +msgstr "Control" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" -msgstr "" +msgstr "Crédito" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" -msgstr "" +msgstr "Alumno sobresaliente" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" -msgstr "" +msgstr "Profesional" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" -msgstr "" +msgstr "Verificado" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" -msgstr "" +msgstr "Educación ejecutiva" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" -msgstr "" +msgstr "Educación ejecutiva remunerada" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" -msgstr "" +msgstr "Educación ejecutiva no remunerada" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" -msgstr "" +msgstr "Bootcamp remunerado" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" -msgstr "" +msgstr "Bootcamp no remunerado" #: ecommerce/credit/views.py:40 msgid "" "An error has occurred. We could not confirm that you are eligible for course" " credit. Try the transaction again." -msgstr "" +msgstr "Se ha producido un error. No pudimos confirmar que usted es elegible para el crédito del curso. Vuelva a intentar la transacción." #: ecommerce/credit/views.py:61 #, python-brace-format @@ -442,35 +443,35 @@ msgid "" "currently enrolled in the course, please try again after all grading is " "complete. If you need additional assistance, please contact the {site_name} " "Support Team." -msgstr "" +msgstr "El crédito no está disponible actualmente para \"{course_name}\". Si actualmente está inscrito en el curso, vuelva a intentarlo una vez que se hayan completado todas las calificaciones. Si necesita asistencia adicional, comuníquese con el equipo de asistencia de {site_name}." #: ecommerce/credit/views.py:75 msgid "" "An error has occurred. We could not confirm that the institution you " "selected offers this course credit. Try the transaction again." -msgstr "" +msgstr "Se ha producido un error. No pudimos confirmar que la institución que seleccionó ofrezca este crédito de curso. Vuelva a intentar la transacción." #: ecommerce/enterprise/benefits.py:24 #, python-format msgid "%d%% enterprise discount" -msgstr "" +msgstr "%d%% descuento empresarial" #: ecommerce/enterprise/benefits.py:36 #, python-brace-format msgid "{value} fixed-price enterprise discount" -msgstr "" +msgstr "{value} descuento empresarial de precio fijo" #: ecommerce/enterprise/benefits.py:45 #: ecommerce/extensions/payment/models.py:86 ecommerce/invoice/models.py:25 #: ecommerce/programs/constants.py:15 msgid "Percentage" -msgstr "" +msgstr "Porcentaje" #: ecommerce/enterprise/benefits.py:46 #: ecommerce/extensions/payment/models.py:87 #: ecommerce/programs/constants.py:16 msgid "Absolute" -msgstr "" +msgstr "Absoluto" #: ecommerce/enterprise/conditions.py:216 #, python-brace-format @@ -478,184 +479,194 @@ msgid "" "This coupon has been made available through {new_enterprise}. To redeem this" " coupon, you must first logout. When you log back in, please select " "{new_enterprise} as your enterprise and try again." -msgstr "" +msgstr "Este cupón está disponible a través de {new_enterprise}. Para canjear este cupón, primero debe cerrar sesión. Cuando vuelva a iniciar sesión, seleccione {new_enterprise} como su empresa y vuelva a intentarlo." #: ecommerce/enterprise/conditions.py:370 msgid "" "This code is not valid with your email. Please login with the correct email " "assigned to the code or contact your Learning Manager for additional " "questions." -msgstr "" +msgstr "Este código no es válido con su correo electrónico. Inicie sesión con el correo electrónico correcto asignado al código o comuníquese con su administrador de aprendizaje si tiene preguntas adicionales." -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" -msgstr "" +msgstr "UUID de cliente empresarial" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" -msgstr "" +msgstr "UUID del catálogo de clientes empresariales" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" -msgstr "" +msgstr "Tipo de descuento" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" -msgstr "" +msgstr "Valor de descuento" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" -msgstr "" +msgstr "Tipo de descuento de contrato" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" -msgstr "" +msgstr "Descuento de contrato" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" -msgstr "" +msgstr "Importe de la factura prepaga" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" +msgstr "Id. de oportunidad de Salesforce" + +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" -msgstr "" +msgstr "Direcciones de correo electrónico" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" -msgstr "" +msgstr "Correos electrónicos separados por comas que recibirán las alertas de uso de la oferta" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" -msgstr "" +msgstr "Frecuencia de los correos electrónicos de uso de la oferta" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." -msgstr "" +msgstr "El número máximo de inscripciones que pueden canjear esta oferta." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." -msgstr "" +msgstr "El monto máximo en dólares estadounidenses que se puede canjear por esta oferta." -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." -msgstr "" +msgstr "El número máximo de inscripciones, por usuario, que puede canjear esta oferta." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." -msgstr "" +msgstr "El monto máximo en dólares estadounidenses que un usuario puede canjear con esta oferta." -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" -msgstr "" +msgstr "Fecha de inicio" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" -msgstr "" +msgstr "Fecha de finalización" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" -msgstr "" +msgstr "Límite de inscripción" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" -msgstr "" +msgstr "Límite de reservas" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" -msgstr "" +msgstr "Límite de inscripción por usuario" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" -msgstr "" +msgstr "Límite de reservas por usuario" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." -msgstr "" +msgstr "Asegúrese de que el nuevo valor debe ser mayor o igual que el valor consumido ({offer_enrollments})." -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." +msgstr "El Id. de oportunidad de Salesforce debe tener 18 caracteres alfanuméricos y comenzar con 006." + +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." -msgstr "" +msgstr "Asegúrese de que este valor sea mayor o igual a 0." -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." -msgstr "" +msgstr "Asegúrese de que el nuevo valor debe ser mayor o igual que el valor consumido ({descuento_consumido: .2f})." -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." -msgstr "" +msgstr "La dirección de correo electrónico dada {email} no es un correo electrónico válido." -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." -msgstr "" +msgstr "Ya existe una oferta para esta combinación de empresa y catálogo." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." -msgstr "" +msgstr "Los descuentos porcentuales no pueden ser superiores al 100%." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." -msgstr "" +msgstr "Se debe especificar una fecha de inicio al especificar una fecha de finalización." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." -msgstr "" +msgstr "La fecha de inicio debe ser anterior a la fecha de finalización." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." -msgstr "" +msgstr "No se permiten más de 2 dígitos después del decimal para el valor absoluto." -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "Este campo es obligatorio cuando el tipo de descuento del contrato es absoluto." -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." -msgstr "" +msgstr "Descuento de tipo {} proporcionado por {} para {}." #: ecommerce/enterprise/templates/enterprise/enterprise_coupon_app.html:5 msgid "Enterprise Coupon Codes" -msgstr "" +msgstr "Códigos de cupones empresariales" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:9 #, python-format msgid "Edit Enterprise Offer: %(enterprise_customer_name)s" -msgstr "" +msgstr "Editar oferta empresarial: %(enterprise_customer_name)s" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:14 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:47 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:60 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:20 msgid "Create Enterprise Offer" -msgstr "" +msgstr "Crear oferta empresarial" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:30 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:6 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:17 #: ecommerce/templates/edx/partials/_administration_menu.html:14 msgid "Enterprise Offers" -msgstr "" +msgstr "Ofertas empresariales" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:34 #: ecommerce/programs/templates/programs/programoffer_form.html:34 @@ -676,16 +687,16 @@ msgstr "Editar" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:36 #: ecommerce/programs/templates/programs/programoffer_form.html:36 msgid "Create" -msgstr "" +msgstr "Crear" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:45 msgid "Edit Enterprise Offer" -msgstr "" +msgstr "Editar oferta empresarial" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:58 #: ecommerce/programs/templates/programs/programoffer_form.html:58 msgid "Save Changes" -msgstr "" +msgstr "Guardar cambios" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:62 #: ecommerce/programs/templates/programs/programoffer_form.html:62 @@ -700,15 +711,15 @@ msgid "" "\n" " %(platform_name)s Enterprise Offer Administration Tool\n" " " -msgstr "" +msgstr "\n%(platform_name)s Herramienta de administración de ofertas empresariales" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:26 msgid "Current enterprise offers" -msgstr "" +msgstr "Ofertas empresariales actuales" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:29 msgid "Enterprise Customer Name" -msgstr "" +msgstr "Nombre de cliente empresarial" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:32 #: ecommerce/programs/templates/programs/programoffer_list.html:31 @@ -720,17 +731,17 @@ msgstr "Tipo" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:33 #: ecommerce/programs/templates/programs/programoffer_list.html:32 msgid "Value" -msgstr "" +msgstr "Valor" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:34 #: ecommerce/programs/templates/programs/programoffer_list.html:33 msgid "Start" -msgstr "" +msgstr "Comienzo" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:35 #: ecommerce/programs/templates/programs/programoffer_list.html:34 msgid "End" -msgstr "" +msgstr "Finalización" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:64 #, python-format @@ -738,44 +749,44 @@ msgid "" "\n" " %(platform_name)s Enterprise Offer Administration Tool\n" " " -msgstr "" +msgstr "\n%(platform_name)s Herramienta de administración de ofertas empresariales" #: ecommerce/enterprise/utils.py:239 #, python-brace-format msgid "SKU {sku} does not exist." -msgstr "" +msgstr "SKU {sku} no existe." #: ecommerce/enterprise/utils.py:248 #, python-brace-format msgid "There is no Enterprise Customer associated with SKU {sku}." -msgstr "" +msgstr "No hay ningún cliente empresarial asociado con el SKU {sku}." #: ecommerce/enterprise/utils.py:256 #, python-brace-format msgid "" "If you have concerns about sharing your data, please contact your " "administrator at {enterprise}." -msgstr "" +msgstr "Si le preocupa compartir sus datos, comuníquese con su administrador en {enterprise}." #: ecommerce/enterprise/utils.py:259 #, python-brace-format msgid "" "If you have concerns about sharing your data, please contact your " "administrator at {enterprise} at {contact_info}." -msgstr "" +msgstr "Si le preocupa compartir sus datos, comuníquese con su administrador en {enterprise} en {contact_info}." #: ecommerce/enterprise/utils.py:265 #, python-brace-format msgid "Enrollment in {course_name} was not complete." -msgstr "" +msgstr "La inscripción en {course_name} no se completó." #: ecommerce/enterprise/views.py:39 msgid "Enterprise offer updated!" -msgstr "" +msgstr "¡Oferta empresarial actualizada!" #: ecommerce/enterprise/views.py:62 msgid "Enterprise offer created!" -msgstr "" +msgstr "¡Oferta empresarial creada!" #: ecommerce/extensions/api/exceptions.py:9 msgid "You can't check out with an empty basket." @@ -798,86 +809,87 @@ msgstr "Uno de los productos que estás intentando pedir no está disponible." #: ecommerce/extensions/api/exceptions.py:21 msgid "" "We couldn't find enough information about you to perform the calculation." -msgstr "" +msgstr "No pudimos encontrar suficiente información sobre usted para realizar el cálculo." -#: ecommerce/extensions/api/serializers.py:256 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" -msgstr "" +msgstr "CADUCADO" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" -msgstr "" +msgstr "INACTIVO" -#: ecommerce/extensions/api/serializers.py:259 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" -msgstr "" +msgstr "ACTIVO" -#: ecommerce/extensions/api/serializers.py:693 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." -msgstr "" +msgstr "Los productos deben tener un tipo de certificado." -#: ecommerce/extensions/api/serializers.py:696 -#: ecommerce/extensions/api/serializers.py:739 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Los productos deben tener un precio." -#: ecommerce/extensions/api/serializers.py:703 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." -msgstr "" +msgstr "Debe proporcionar un UUID de curso para crear derechos de curso." -#: ecommerce/extensions/api/serializers.py:735 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "Los productos deben indicar si se requiere verificación de identidad." -#: ecommerce/extensions/api/serializers.py:806 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "Petición inválida de clase de producto [{product_class}]." -#: ecommerce/extensions/api/serializers.py:838 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " "[publish_course_modes_to_lms] is disabled. To avoid ghost SKUs, data has not" " been saved." -msgstr "" +msgstr "El curso [{course_id}] no se publicó en LMS porque el cambio [publish_course_modes_to_lms] está deshabilitado. Para evitar SKU fantasmas, los datos no se han guardado." -#: ecommerce/extensions/api/serializers.py:1508 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" -msgstr "" +msgstr "Código de inscripción" -#: ecommerce/extensions/api/serializers.py:1509 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" -msgstr "" +msgstr "Código de descuento" -#: ecommerce/extensions/api/serializers.py:1976 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." -msgstr "" +msgstr "El número de pedido no es válido o el pedido {} no existe." -#: ecommerce/extensions/api/serializers.py:2031 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" -msgstr "" +msgstr "Fallo en la asignación del vale de cupón nuevo. Error: {}" -#: ecommerce/extensions/api/serializers.py:2049 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." -msgstr "" +msgstr "Su pedido {} no se puede reembolsar porque el cupón '{}' no se admite para reembolso." -#: ecommerce/extensions/api/serializers.py:2080 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" -msgstr "" +msgstr "Podría notar crear un nuevo cupón para el pedido: {}" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." -msgstr "" +msgstr "No se proporcionaron SKU." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." -msgstr "" +msgstr "Los productos con SKU(s) [{skus}] no existen." #: ecommerce/extensions/api/v2/views/baskets.py:467 msgid "Provide username or is_anonymous query param, but not both" @@ -886,17 +898,17 @@ msgstr "Proporciona el nombre de usuario o el parámetro de consulta is_anonymou #: ecommerce/extensions/api/v2/views/products.py:54 #, python-brace-format msgid "Product API only supports {http_method} for {product_class} products." -msgstr "" +msgstr "La API del producto solo admite {http_method} para productos {product_class}." #: ecommerce/extensions/api/v2/views/products.py:69 #, python-brace-format msgid "Missing or bad value for: [{name}]." -msgstr "" +msgstr "Valor faltante o incorrecto para: [{name}]." #: ecommerce/extensions/basket/models.py:119 #, python-brace-format msgid "{id} - {status} basket (owner: {owner}, lines: {num_lines})" -msgstr "" +msgstr "{id} - {status} cesta (propietario: {owner}, líneas: {num_lines})" #: ecommerce/extensions/basket/models.py:142 #: ecommerce/extensions/payment/models.py:28 @@ -906,90 +918,90 @@ msgstr "Cesta" #: ecommerce/extensions/basket/models.py:144 msgid "Attribute Type" -msgstr "" +msgstr "Tipo de atributo" #: ecommerce/extensions/basket/models.py:146 msgid "Text Attribute" -msgstr "" +msgstr "Atributo de texto" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." -msgstr "" +msgstr "Debido a los controles de exportación, no podemos permitirle acceder a este curso en este momento." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" -msgstr "" +msgstr "Haga clic aquí para comprar una inscripción para usted" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" -msgstr "" +msgstr "Haga clic aquí para comprar varios asientos en este curso" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." -msgstr "" +msgstr "El cupón '{code}' ha caducado." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." -msgstr "" +msgstr "El cupón '{code}' ya no está activo" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" -msgstr "" +msgstr "El código de cupón '{code}' no está disponible. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." -msgstr "" +msgstr "El código del cupón '{code}' es inválido para este carrito de compras." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." -msgstr "" +msgstr "El código de cupón'{code}' no es válido en este carrito para una compra en conjunto." -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." -msgstr "" +msgstr "Código de cupón '{code}' añadido al carrito de compras." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." -msgstr "" +msgstr "El carrito de compras no califica para el código de cupón {code}." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." -msgstr "" +msgstr "No se pudo aplicar el código '{code}'; se requiere el consentimiento para compartir datos." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." -msgstr "" +msgstr "Después de completar su orden, podrá seleccionar las fechas del curso desde su panel de control." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." -msgstr "" +msgstr "Después de completar su orden será automáticamente inscrito en el modo verificado del curso." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." -msgstr "" +msgstr "Después de completar tu pedido recibirás crédito por tu curso." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." -msgstr "" +msgstr "Después de completar su orden será automáticamente inscrito en el modo verificado del curso." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1004,53 +1016,53 @@ msgid "" "final and not eligible for refunds.{li_end}{ul_end} {paragraph_start}You " "will receive an email at {user_email} with your enrollment code(s). " "{paragraph_end}" -msgstr "" +msgstr "{paragraph_start}By purchasing, you and your organization agree to the following terms:{paragraph_end} {ul_start} {li_start}Each code is valid for the one course covered and can be used only one time.{li_end} {li_start}You are responsible for distributing codes to your learners in your organization.{li_end} {li_start}Each code will expire in one year from date of purchase or, if earlier, once the course is closed.{li_end} {li_start}If a course is not designated as self-paced, you should confirm that a course run is available before expiration. {li_end} {li_start}You may not resell codes to third parties.{li_end} {li_start}All edX for Business Sales are final and not eligible for refunds.{li_end}{ul_end} {paragraph_start}You will receive an email at {user_email} with your enrollment code(s). {paragraph_end}" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " "you are purchasing a single code for someone else, please continue with " "checkout. However, if you are the learner {link_start}go back{link_end} to " "enroll directly.{paragraph_end}" -msgstr "" +msgstr "{strong_start}¿Comprar solo para usted?{strong_end}{paragraph_start}Si está comprando un solo código para otra persona, continúe con el pago. Sin embargo, si eres el alumno {link_start}vuelve{link_end} para inscribirte directamente.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" -msgstr "" +msgstr "Ya ha comprado estos productos" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." -msgstr "" +msgstr "No hay ningún producto disponible para comprar." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" -msgstr "" +msgstr "cantidad actualizada correctamente" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." -msgstr "" +msgstr "No se pudo actualizar su cesta. Corrija los errores de validación a continuación." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." -msgstr "" +msgstr "Usted ya añadió un cupón '{code}' a su carrito de compras." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." -msgstr "" +msgstr "El código de cupón '{code}' no existe" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" -msgstr "" +msgstr "No se encontró un código de cupón con el id '%s'" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." -msgstr "" +msgstr "El código de cupón '%s' fue removido de su cesta." #: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." @@ -1118,55 +1130,69 @@ msgstr "Estado" msgid "Failed to retrieve enrollment data." msgstr "Fallo al recuperar los datos de inscripción." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "Número de veces para reintentar las acciones del cliente IAP fallidas (por ejemplo, creación de pago, ejecución de pago)" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "Número de días transcurridos para recuperar los reembolsos de Android." + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "ID de transacción original" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" -msgstr "" +msgstr "Día 3" #: ecommerce/extensions/offer/constants.py:33 msgid "Day 10" -msgstr "" +msgstr "Día 10" #: ecommerce/extensions/offer/constants.py:34 msgid "Day 19" -msgstr "" +msgstr "Día 19" #: ecommerce/extensions/offer/constants.py:40 msgid "Assign" -msgstr "" +msgstr "Asignar" #: ecommerce/extensions/offer/constants.py:41 msgid "Remind" -msgstr "" +msgstr "Recordar" #: ecommerce/extensions/offer/constants.py:42 msgid "Revoke" -msgstr "" +msgstr "Revocar" #: ecommerce/extensions/offer/constants.py:77 msgid "Automatic" -msgstr "" +msgstr "Automático" #: ecommerce/extensions/offer/constants.py:78 msgid "Manual" -msgstr "" +msgstr "Manual" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." -msgstr "" +msgstr "Id. del catálogo de cursos del Discovery Service." -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." -msgstr "" +msgstr "UUID para un EnterpriseCustomerCatalog de Enterprise Service." -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" -msgstr "" +msgstr "Nombre del cliente empresarial" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" -msgstr "" +msgstr "UUID de EnterpriseCustomerCatalog" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1175,49 +1201,49 @@ msgstr "" #: ecommerce/extensions/voucher/utils.py:341 ecommerce/programs/forms.py:22 #: ecommerce/programs/templates/programs/programoffer_list.html:30 msgid "Program UUID" -msgstr "" +msgstr "UUID del Programa" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." -msgstr "" +msgstr "Correo electrónico a usuario pendiente." -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." -msgstr "" +msgstr "Código asignado con éxito al usuario." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." -msgstr "" +msgstr "El usuario ha canjeado el código." -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." -msgstr "" +msgstr "Correo electrónico al usuario rebotado." -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." -msgstr "" +msgstr "El código ha sido revocado para este usuario." -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." -msgstr "" +msgstr "Active una versión de plantilla en particular." -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." -msgstr "" +msgstr "E-mail ha sido enviado." -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" -msgstr "" +msgstr "Este usuario debe recibir correo electrónico" #: ecommerce/extensions/offer/utils.py:97 #, python-brace-format msgid "{benefit_value}%" -msgstr "" +msgstr "{benefit_value}%" #: ecommerce/extensions/offer/utils.py:100 #, python-brace-format msgid "${benefit_value}" -msgstr "" +msgstr "${benefit_value}" #. Translators: "Waffle" is the name of a third-party library. It should not #. be translated @@ -1227,12 +1253,12 @@ msgid "" "Order administration has been disabled due to the load on the database. This" " functionality can be restored by activating the {switch_name} Waffle " "switch. Be careful when re-activating this switch!" -msgstr "" +msgstr "La administración de pedidos se ha deshabilitado debido a la carga en la base de datos. Esta funcionalidad se puede restaurar activando el interruptor Waffle {switch_name}. ¡Tenga cuidado al reactivar este interruptor!" #: ecommerce/extensions/order/benefits.py:22 #, python-format msgid "%d%% discount for manual course enrollment order" -msgstr "" +msgstr "%d%% descuento por orden de inscripción manual al curso" #: ecommerce/extensions/order/models.py:39 #: ecommerce/extensions/payment/models.py:26 @@ -1243,37 +1269,53 @@ msgstr "Procesador de pago" msgid "" "It expect that the order numbers stuck in fulfillment error state will be" " provided in a txt file format one per line." -msgstr "" +msgstr "Se espera que los números de pedido atascados en el estado de error de cumplimiento se proporcionen en un formato de archivo txt uno por línea." #: ecommerce/extensions/partner/admin.py:28 msgid "Click 'Save and Continue Editing' to add stock records" -msgstr "" +msgstr "Click en 'Guardar y Continuar Editando' para añadir registros al inventario" #: ecommerce/extensions/partner/models.py:22 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:193 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:74 msgid "Partner" -msgstr "" +msgstr "Compañero" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Socios" #: ecommerce/extensions/payment/constants.py:8 msgid "American Express" -msgstr "" +msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "Diners" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" -msgstr "" +msgstr "Discover" + +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "JCB" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" -msgstr "" +msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "UnionPay" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "Desconocido" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" -msgstr "" +msgstr "Visa" #: ecommerce/extensions/payment/exceptions.py:8 msgid "We don't support the payment option you selected." @@ -1281,7 +1323,7 @@ msgstr "No aceptamos la opción de pago seleccionada." #: ecommerce/extensions/payment/forms.py:31 msgid "Choose country" -msgstr "" +msgstr "Eligir un país" #. Translators: This is a string added next to the name of the required #. fields on the payment form. For example, the first name field is @@ -1298,14 +1340,14 @@ msgstr "Organización (obligatorio)" #: ecommerce/extensions/payment/forms.py:124 msgid "" "I am purchasing on behalf of my employer or other professional organization" -msgstr "" +msgstr "Estoy comprando en nombre de mi empresa u otra organización profesional" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." -msgstr "" +msgstr "Hubo un problema al recuperar su cesta. Actualice la página para volver a intentarlo." #: ecommerce/extensions/payment/forms.py:144 msgid "First Name (required)" @@ -1321,7 +1363,7 @@ msgstr "Dirección (obligatorio)" #: ecommerce/extensions/payment/forms.py:147 msgid "Suite/Apartment Number" -msgstr "" +msgstr "Número" #: ecommerce/extensions/payment/forms.py:148 msgid "City (required)" @@ -1329,11 +1371,11 @@ msgstr "Ciudad (obligatorio)" #: ecommerce/extensions/payment/forms.py:151 msgid "State/Province" -msgstr "" +msgstr "Estado/Provincia" #: ecommerce/extensions/payment/forms.py:152 msgid "Zip/Postal Code" -msgstr "" +msgstr "Código postal" #: ecommerce/extensions/payment/forms.py:153 msgid "Country (required)" @@ -1348,7 +1390,7 @@ msgstr "Este campo es obligatorio." #: ecommerce/extensions/payment/forms.py:199 msgid "" "Postal codes for the U.S. and Canada are limited to nine (9) characters." -msgstr "" +msgstr "Los códigos postales de EE. UU. y Canadá están limitados a nueve (9) caracteres." #: ecommerce/extensions/payment/models.py:27 msgid "Transaction ID" @@ -1366,31 +1408,31 @@ msgstr "Respuesta del procesador de pago" msgid "" "Number of times to retry failing Paypal client actions (e.g., payment " "creation, payment execution)" -msgstr "" +msgstr "Número de veces para reintentar las acciones fallidas del cliente de Paypal (por ejemplo, creación de pago, ejecución de pago)" #: ecommerce/extensions/payment/models.py:112 msgid "More than 10 digits before the decimal not allowed for fixed value." -msgstr "" +msgstr "No se permiten más de 10 dígitos antes del decimal para valor fijo." #: ecommerce/extensions/payment/models.py:118 msgid "More than 2 digits after the decimal not allowed for fixed value." -msgstr "" +msgstr "Más de 2 dígitos después del decimal no permitido para valor fijo." #: ecommerce/extensions/payment/models.py:126 msgid "Percentage greater than 100 not allowed." -msgstr "" +msgstr "Porcentaje superior a 100 no permitido." #. Translators: This is a string placed in the middle of a truncated string #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" -msgstr "" +msgstr "transaccion rechazada" #. Translators: "Waffle" is the name of a third-party library. It should not #. be translated @@ -1400,7 +1442,7 @@ msgid "" "Refund administration has been disabled due to the load on the database. " "This functionality can be restored by activating the {switch_name} Waffle " "switch. Be careful when re-activating this switch!" -msgstr "" +msgstr "La administración de reembolsos se ha deshabilitado debido a la carga en la base de datos. Esta funcionalidad se puede restaurar activando el interruptor Waffle {switch_name}. ¡Tenga cuidado al reactivar este interruptor!" #: ecommerce/extensions/refund/models.py:67 msgid "Order" @@ -1433,7 +1475,7 @@ msgid "Line Credit (excl. tax)" msgstr "Crédito (sin impuestos)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1448,47 +1490,47 @@ msgstr "Cantidad" #: ecommerce/extensions/voucher/models.py:40 msgid "Can be used once by one customer" -msgstr "" +msgstr "Puede ser utilizado una vez por un cliente" #: ecommerce/extensions/voucher/models.py:41 msgid "Can be used multiple times by multiple customers" -msgstr "" +msgstr "Puede ser utilizado varias veces por varios clientes" #: ecommerce/extensions/voucher/models.py:42 msgid "Can only be used once per customer" -msgstr "" +msgstr "Solo se puede usar una vez por cliente" #: ecommerce/extensions/voucher/models.py:43 msgid "Can be used multiple times by one customer" -msgstr "" +msgstr "Puede ser utilizado varias veces por un cliente" #: ecommerce/extensions/voucher/models.py:45 msgid "Usage" -msgstr "" +msgstr "Uso" #: ecommerce/extensions/voucher/models.py:48 msgid "Is Public Code Batch" -msgstr "" +msgstr "Es lote de código público" #: ecommerce/extensions/voucher/models.py:49 msgid "Should this code batch be public or private for assignment." -msgstr "" +msgstr "Si este lote de código debe ser público o privado para la asignación." #: ecommerce/extensions/voucher/models.py:63 msgid "This voucher is assigned to another user." -msgstr "" +msgstr "Este vale está asignado a otro usuario." #: ecommerce/extensions/voucher/tests/test_utils.py:215 #: ecommerce/extensions/voucher/utils.py:76 #: ecommerce/extensions/voucher/utils.py:318 msgid "Redeemed" -msgstr "" +msgstr "Canjeado" #: ecommerce/extensions/voucher/tests/test_utils.py:379 #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1500,7 +1542,7 @@ msgstr "Descuento" #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 msgid "Enrollment" -msgstr "" +msgstr "Inscripciones" #: ecommerce/extensions/voucher/tests/test_utils.py:380 #: ecommerce/extensions/voucher/tests/test_utils.py:388 @@ -1508,12 +1550,12 @@ msgstr "" #: ecommerce/extensions/voucher/utils.py:165 #, python-brace-format msgid "{percentage} %" -msgstr "" +msgstr "{percentage} %" #: ecommerce/extensions/voucher/tests/test_utils.py:544 #: ecommerce/extensions/voucher/utils.py:78 msgid "Inactive" -msgstr "" +msgstr "Inactivo" #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:192 @@ -1522,20 +1564,20 @@ msgstr "" #: ecommerce/extensions/voucher/utils.py:332 #: ecommerce/extensions/voucher/utils.py:337 msgid "Catalog Query" -msgstr "" +msgstr "Consulta de catálogo" #: ecommerce/extensions/voucher/utils.py:55 #: ecommerce/extensions/voucher/utils.py:285 #: ecommerce/extensions/voucher/utils.py:340 msgid "Redeemed For Course IDs" -msgstr "" +msgstr "Canjeado por ID de curso" #: ecommerce/extensions/voucher/utils.py:57 #: ecommerce/extensions/voucher/utils.py:284 #: ecommerce/extensions/voucher/utils.py:331 #: ecommerce/extensions/voucher/utils.py:339 msgid "Redeemed For Course ID" -msgstr "" +msgstr "Canjeado por ID de curso" #: ecommerce/extensions/voucher/utils.py:76 #: ecommerce/templates/oscar/dashboard/users/detail.html:52 @@ -1546,67 +1588,67 @@ msgstr "Activo" #: ecommerce/extensions/voucher/utils.py:219 #: ecommerce/extensions/voucher/utils.py:263 msgid "Code" -msgstr "" +msgstr "Código" #: ecommerce/extensions/voucher/utils.py:171 msgid "This row applies to all vouchers" -msgstr "" +msgstr "Esta fila se aplica a todos los comprobantes" #: ecommerce/extensions/voucher/utils.py:172 #: ecommerce/extensions/voucher/utils.py:275 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:126 msgid "Category" -msgstr "" +msgstr "Categoría" #: ecommerce/extensions/voucher/utils.py:173 #: ecommerce/extensions/voucher/utils.py:288 msgid "Coupon Expiry Date" -msgstr "" +msgstr "Fecha de vencimiento del cupón" #: ecommerce/extensions/voucher/utils.py:174 #: ecommerce/extensions/voucher/utils.py:264 msgid "Coupon Name" -msgstr "" +msgstr "Nombre del cupón" #: ecommerce/extensions/voucher/utils.py:175 #: ecommerce/extensions/voucher/utils.py:287 msgid "Coupon Start Date" -msgstr "" +msgstr "Fecha de inicio del cupón" #: ecommerce/extensions/voucher/utils.py:176 #: ecommerce/extensions/voucher/utils.py:267 msgid "Coupon Type" -msgstr "" +msgstr "Tipo de cupón" #: ecommerce/extensions/voucher/utils.py:177 #: ecommerce/extensions/voucher/utils.py:286 msgid "Create Date" -msgstr "" +msgstr "Fecha de creación" #: ecommerce/extensions/voucher/utils.py:178 #: ecommerce/extensions/voucher/utils.py:279 msgid "Discount Percentage" -msgstr "" +msgstr "Porcentaje de descuento" #: ecommerce/extensions/voucher/utils.py:179 #: ecommerce/extensions/voucher/utils.py:280 msgid "Discount Amount" -msgstr "" +msgstr "Importe de descuento" #: ecommerce/extensions/voucher/utils.py:180 #: ecommerce/extensions/voucher/utils.py:289 msgid "Email Domains" -msgstr "" +msgstr "Dominios de correo" #: ecommerce/extensions/voucher/utils.py:181 #: ecommerce/extensions/voucher/utils.py:278 msgid "Invoiced Amount" -msgstr "" +msgstr "Importe facturado" #: ecommerce/extensions/voucher/utils.py:182 #: ecommerce/extensions/voucher/utils.py:276 msgid "Note" -msgstr "" +msgstr "Nota" #: ecommerce/extensions/voucher/utils.py:183 #: ecommerce/extensions/voucher/utils.py:277 @@ -1614,7 +1656,7 @@ msgstr "" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:61 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:63 msgid "Price" -msgstr "" +msgstr "Precio" #: ecommerce/extensions/voucher/utils.py:187 #: ecommerce/extensions/voucher/utils.py:269 @@ -1629,36 +1671,36 @@ msgstr "ID del curso" #: ecommerce/extensions/voucher/utils.py:328 #: ecommerce/extensions/voucher/utils.py:334 msgid "Organization" -msgstr "" +msgstr "Organización" #: ecommerce/extensions/voucher/utils.py:193 #: ecommerce/extensions/voucher/utils.py:272 #: ecommerce/extensions/voucher/utils.py:330 #: ecommerce/extensions/voucher/utils.py:338 msgid "Course Seat Types" -msgstr "" +msgstr "Tipos de asientos del curso" #: ecommerce/extensions/voucher/utils.py:220 #: ecommerce/extensions/voucher/utils.py:265 #: ecommerce/extensions/voucher/utils.py:321 msgid "Maximum Coupon Usage" -msgstr "" +msgstr "Uso máximo de cupones" #: ecommerce/extensions/voucher/utils.py:221 #: ecommerce/extensions/voucher/utils.py:266 #: ecommerce/extensions/voucher/utils.py:322 msgid "Redemption Count" -msgstr "" +msgstr "Recuento de canje" #: ecommerce/extensions/voucher/utils.py:223 #: ecommerce/extensions/voucher/utils.py:268 msgid "URL" -msgstr "" +msgstr "URL" #: ecommerce/extensions/voucher/utils.py:274 #: ecommerce/extensions/voucher/utils.py:297 msgid "Client" -msgstr "" +msgstr "Cliente" #: ecommerce/extensions/voucher/utils.py:282 #: ecommerce/extensions/voucher/utils.py:302 @@ -1676,100 +1718,100 @@ msgstr "Canjeado por nombre de usuario" #: ecommerce/extensions/voucher/utils.py:785 #, python-brace-format msgid "Range for coupon [{coupon_id}]" -msgstr "" +msgstr "Rango para cupón [{coupon_id}]" #: ecommerce/extensions/voucher/views.py:31 #, python-brace-format msgid "Coupon Report for {coupon_name}" -msgstr "" +msgstr "Informe de cupón para {coupon_name}" #: ecommerce/extensions/voucher/views.py:40 msgid "" "Failed to find a matching stock record for coupon, report download canceled." -msgstr "" +msgstr "No se pudo encontrar un registro de existencias coincidente para el cupón, se canceló la descarga del informe." #: ecommerce/invoice/models.py:13 msgid "Not Paid" -msgstr "" +msgstr "No pagado" #: ecommerce/invoice/models.py:14 msgid "Paid" -msgstr "" +msgstr "Pagado" #: ecommerce/invoice/models.py:18 msgid "Prepaid" -msgstr "" +msgstr "Pagado por adelantado" #: ecommerce/invoice/models.py:19 msgid "Postpaid" -msgstr "" +msgstr "Pospago" #: ecommerce/invoice/models.py:20 msgid "Bulk purchase" -msgstr "" +msgstr "Compra a granel" #: ecommerce/invoice/models.py:21 msgid "Not applicable" -msgstr "" +msgstr "No aplica" #: ecommerce/invoice/models.py:26 msgid "Fixed" -msgstr "" +msgstr "Fijado" #: ecommerce/management/templates/management/index.html:7 msgid "Management View" -msgstr "" +msgstr "Vista de Administración" #: ecommerce/management/templates/management/index.html:26 msgid "Refund Transactions" -msgstr "" +msgstr "Transacciones de reembolso" #: ecommerce/management/views.py:53 #, python-brace-format msgid "{action} is not a valid action." -msgstr "" +msgstr "{acción} Es una acción no válida" #: ecommerce/programs/benefits.py:27 #, python-brace-format msgid "{value}% program discount" -msgstr "" +msgstr "{value}% de descuento del programa" #: ecommerce/programs/benefits.py:44 #, python-brace-format msgid "{value} fixed-price program discount" -msgstr "" +msgstr "{value} descuento del programa de precio fijo" #: ecommerce/programs/forms.py:70 msgid "An offer already exists for this program." -msgstr "" +msgstr "Ya existe una oferta para este programa." #: ecommerce/programs/forms.py:90 #, python-brace-format msgid "{current_date} Discount for the {program_title} {program_type} Program" -msgstr "" +msgstr "{current_date} Descuento para el programa {program_title} {program_type}" #: ecommerce/programs/templates/programs/programoffer_form.html:9 #, python-format msgid "Edit Program Offer: %(program_title)s" -msgstr "" +msgstr "Editar oferta de programa: %(program_title)s" #: ecommerce/programs/templates/programs/programoffer_form.html:14 #: ecommerce/programs/templates/programs/programoffer_form.html:47 #: ecommerce/programs/templates/programs/programoffer_form.html:60 #: ecommerce/programs/templates/programs/programoffer_list.html:20 msgid "Create Program Offer" -msgstr "" +msgstr "Crear oferta de programa" #: ecommerce/programs/templates/programs/programoffer_form.html:30 #: ecommerce/programs/templates/programs/programoffer_list.html:6 #: ecommerce/programs/templates/programs/programoffer_list.html:17 #: ecommerce/templates/edx/partials/_administration_menu.html:11 msgid "Program Offers" -msgstr "" +msgstr "Ofertas de programas" #: ecommerce/programs/templates/programs/programoffer_form.html:45 msgid "Edit Program Offer" -msgstr "" +msgstr "Editar oferta de programa" #: ecommerce/programs/templates/programs/programoffer_form.html:76 #: ecommerce/programs/templates/programs/programoffer_list.html:60 @@ -1778,53 +1820,53 @@ msgid "" "\n" " %(platform_name)s Program Offer Administration Tool\n" " " -msgstr "" +msgstr "\n%(platform_name)s Herramienta de administración de ofertas de programas" #: ecommerce/programs/templates/programs/programoffer_list.html:26 msgid "Current program offers" -msgstr "" +msgstr "Ofertas de programas actuales" #: ecommerce/programs/templates/programs/programoffer_list.html:29 msgid "Program Title" -msgstr "" +msgstr "Título del programa" #: ecommerce/programs/views.py:38 msgid "Program offer updated!" -msgstr "" +msgstr "¡Oferta de programa actualizada!" #: ecommerce/programs/views.py:61 msgid "Program offer created!" -msgstr "" +msgstr "¡Oferta de programa creada!" #: ecommerce/referrals/models.py:26 msgid "Affiliate ID" -msgstr "" +msgstr "identificación del afiliado" #: ecommerce/referrals/models.py:27 msgid "UTM Source" -msgstr "" +msgstr "Fuente UTM" #: ecommerce/referrals/models.py:28 msgid "UTM Medium" -msgstr "" +msgstr "Medio UTM" #: ecommerce/referrals/models.py:29 msgid "UTM Campaign" -msgstr "" +msgstr "Campaña UTM" #: ecommerce/referrals/models.py:30 msgid "UTM Term" -msgstr "" +msgstr "Término UTM" #: ecommerce/referrals/models.py:31 msgid "UTM Content" -msgstr "" +msgstr "Contenido UTM" #: ecommerce/referrals/models.py:32 msgid "UTM Created At" -msgstr "" +msgstr "UTM creado en" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1837,38 +1879,38 @@ msgstr "" msgid "Dashboard" msgstr "Panel de control" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Catálogo" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Productos" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Tipos de productos" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Categorías" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Variedades" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Alertas por existencias escasas." -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Cumplimiento" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1880,11 +1922,11 @@ msgstr "Cumplimiento" msgid "Orders" msgstr "Pedidos" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Estadísticas" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1895,67 +1937,67 @@ msgstr "Estadísticas" msgid "Refunds" msgstr "Reembolsos" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Clientes" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Alerta sobre stock" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" -msgstr "" +msgstr "Ofertas" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" -msgstr "" +msgstr "Cupones" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Informes" #: ecommerce/settings/base.py:93 msgid "English" -msgstr "" +msgstr "inglés" #: ecommerce/settings/base.py:94 msgid "Spanish" -msgstr "" +msgstr "español" #: ecommerce/settings/base.py:95 msgid "Spanish (Latin American)" -msgstr "" +msgstr "español (latinoamericano)" #: ecommerce/templates/base.html:10 msgid "Build" -msgstr "" +msgstr "Construir" #: ecommerce/templates/base.html:71 msgid "Version:" -msgstr "" +msgstr "Versión:" #: ecommerce/templates/coupons/_offer_error.html:4 #: ecommerce/templates/coupons/offer.html:5 #: ecommerce/templates/edx/email_confirmation_required.html:4 msgid "Redeem" -msgstr "" +msgstr "Canjear" #: ecommerce/templates/coupons/coupon_app.html:5 msgid "Coupon Codes" -msgstr "" +msgstr "Códigos de cupón" #: ecommerce/templates/coupons/offer.html:18 msgid "" "Earn a verified certificate in one of our popular courses to advance your " "career, showcase your accomplishments or enhance your college application." -msgstr "" +msgstr "Obtenga un certificado verificado en uno de nuestros cursos populares para avanzar en su carrera, mostrar sus logros o mejorar su solicitud de ingreso a la universidad." #: ecommerce/templates/coupons/offer.html:22 msgid "Why buy a verified certificate?" -msgstr "" +msgstr "¿Por qué comprar un certificado verificado?" #: ecommerce/templates/coupons/offer.html:27 msgid "" @@ -1964,25 +2006,25 @@ msgid "" "university's logo, as well as signatures from faculty members involved with " "the course. There is also a URL that can be used to verify the authenticity " "of the certificate." -msgstr "" +msgstr "Un certificado verificado (digital) que confirma que un usuario completó el curso en una fecha específica. El certificado incluye el logotipo de edX y el logotipo de la universidad, así como las firmas de los profesores involucrados en el curso. También hay una URL que se puede usar para verificar la autenticidad del certificado." #: ecommerce/templates/coupons/offer.html:30 msgid "" "A verified certificate demonstrates to future employers that you've mastered" " the course material." -msgstr "" +msgstr "Un certificado verificado demuestra a los futuros empleadores que domina el material del curso." #: ecommerce/templates/coupons/offer.html:32 msgid "" "The certificate is officially signed and stamped by the institution that " "offers the course." -msgstr "" +msgstr "El certificado está firmado y sellado oficialmente por la institución que ofrece el curso." #: ecommerce/templates/coupons/offer.html:34 msgid "" "You're twelve times more likely to complete the course if you're working " "toward a verified certificate." -msgstr "" +msgstr "Tiene doce veces más probabilidades de completar el curso si está trabajando para obtener un certificado verificado." #: ecommerce/templates/courses/course_app.html:5 #: ecommerce/templates/edx/partials/_administration_menu.html:5 @@ -1995,7 +2037,7 @@ msgid "" "\n" " %(platform_name)s Course Administration Tool\n" " " -msgstr "" +msgstr "\n%(platform_name)s Herramienta de administración del curso" #: ecommerce/templates/courses/menu_options.html:8 msgid "Student Dashboard" @@ -2016,11 +2058,11 @@ msgstr "Cerrar sesión" #: ecommerce/templates/edx/checkout/receipt.html:13 #, python-format msgid "Receipt for %(order_number)s" -msgstr "" +msgstr "Recibo para %(order_number)s" #: ecommerce/templates/edx/checkout/receipt.html:43 msgid "Thank you for your order!" -msgstr "" +msgstr "¡Gracias por su orden!" #: ecommerce/templates/edx/checkout/receipt.html:53 #, python-brace-format @@ -2028,91 +2070,100 @@ msgid "" "Your order is complete. You will receive a confirmation message and your " "enrollment code(s) at {link_start}{email}{link_end}. If you need a receipt, " "you can print this page." -msgstr "" +msgstr "Su pedido está completo. Recibirá un mensaje de confirmación y sus códigos de inscripción en {link_start}{email}{link_end}. Si necesita un recibo, puede imprimir esta página." + +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "Su pedido está completo. Si necesita un recibo, puede imprimir esta página. {next_start} Próximos pasos:{next_end} 1. Busque en su bandeja de entrada un correo electrónico de confirmación del pedido de Get Smarter.{next_line} 2: Siga las instrucciones del correo electrónico para completar su registro." -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." -msgstr "" +msgstr "Su pedido está completo. Si necesita un recibo, puede imprimir esta página." -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" -msgstr "" +msgstr "Número de orden:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" -msgstr "" +msgstr "Método de pago:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" -msgstr "" +msgstr "Fecha de orden:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" -msgstr "" +msgstr "información del pedido" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" -msgstr "" +msgstr "Descripción" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" -msgstr "" +msgstr "Precio del ítem:" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Cantidad:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" -msgstr "" +msgstr "Descripción:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" -msgstr "" +msgstr "Precio:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" -msgstr "" +msgstr "Subtotal" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" -msgstr "" +msgstr "%(voucher_discount_amount)s apagado" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" -msgstr "" +msgstr "Descuento de tipo %(type)s proporcionado por %(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" -msgstr "" +msgstr "Descuento para tu primera actualización" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." -msgstr "" +msgstr "Se proporciona descuento del tipo %(type)s." -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." -msgstr "" +msgstr "Cortesía de %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" -msgstr "" +msgstr "Total" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" -msgstr "" +msgstr "Obtenga su crédito de curso" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2120,30 +2171,30 @@ msgid "" "organization’s website on your " "{link_start}{lms_dashboard_url}{link_middle}dashboard{link_end}, next to the" " course name." -msgstr "" +msgstr "Para recibir crédito académico por este curso, debe solicitar crédito en la organización que ofrece el crédito. Puedes encontrar un enlace al sitio web de la organización en tu {link_start}{lms_dashboard_url}{link_middle}panel de control{link_end}, junto al nombre del curso." -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" -msgstr "" +msgstr "Ir al panel de control" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" -msgstr "" +msgstr "Encuentra más cursos" #: ecommerce/templates/edx/checkout/receipt_not_found.html:7 msgid "Order Not Found" -msgstr "" +msgstr "Pedido no encontrado" #: ecommerce/templates/edx/checkout/receipt_not_found.html:19 #, python-format msgid " %(error_summary)s " -msgstr "" +msgstr "%(error_summary)s" #: ecommerce/templates/edx/checkout/receipt_not_found.html:23 msgid "" "The specified order could not be located. Please ensure that the URL is " "correct, and try again." -msgstr "" +msgstr "No encontramos el pedido especificado. Por favor, comprueba que la URL es correcta e inténtalo de nuevo." #: ecommerce/templates/edx/checkout/receipt_not_found.html:31 #, python-brace-format @@ -2152,19 +2203,19 @@ msgid "" " You may also view your previous orders on the {link_start}{order_history_url}{link_middle}{link_end}Account Settings{link_end}\n" " page.\n" " " -msgstr "" +msgstr "\nTambién puede ver sus pedidos anteriores en la página {link_start}{order_history_url}{link_middle}{link_end}Configuración de la cuenta{link_end}." #: ecommerce/templates/edx/credit/_provider_detail.html:8 msgid "Select" -msgstr "" +msgstr "Seleccionar" #: ecommerce/templates/edx/credit/_provider_detail.html:16 msgid "Credits: " -msgstr "" +msgstr "Créditos:" #: ecommerce/templates/edx/credit/_provider_detail.html:17 msgid "Price: " -msgstr "" +msgstr "Precio:" #: ecommerce/templates/edx/credit/_provider_detail.html:27 #, python-format @@ -2172,7 +2223,7 @@ msgid "" "\n" " Learn more about %(display_name)s credit?\n" " " -msgstr "" +msgstr "\n ¿Desea aprender más de crédito%(display_name)s ?\n " #: ecommerce/templates/edx/credit/_provider_detail.html:47 #, python-format @@ -2180,12 +2231,12 @@ msgid "" "\n" " Credit available until %(date)s\n" " " -msgstr "" +msgstr "\nCrédito disponible hasta %(date)s" #: ecommerce/templates/edx/credit/checkout.html:9 #, python-format msgid "Purchase Credit for %(course_name)s" -msgstr "" +msgstr "Crédito de compra para %(course_name)s" #: ecommerce/templates/edx/credit/checkout.html:27 #, python-format @@ -2193,7 +2244,7 @@ msgid "" "\n" " Purchase Credit for %(course_name)s\n" " " -msgstr "" +msgstr "\nCrédito de compra para %(course_name)s" #: ecommerce/templates/edx/credit/checkout.html:34 #, python-format @@ -2203,15 +2254,15 @@ msgid "" " You must purchase your credit before %(date)s.\n" " Select one of the following institutions to purchase your credit.\n" " " -msgstr "" +msgstr "\n¡Felicidades! Usted es elegible para comprar crédito de curso académico para este curso. Debes comprar tu crédito antes de %(date)s. Seleccione una de las siguientes instituciones para comprar su crédito." #: ecommerce/templates/edx/credit/checkout.html:51 msgid "Price:" -msgstr "" +msgstr "Precio:" #: ecommerce/templates/edx/credit/checkout.html:55 msgid "Discount:" -msgstr "" +msgstr "Descuento:" #: ecommerce/templates/edx/credit/checkout.html:60 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:127 @@ -2220,13 +2271,13 @@ msgstr "Total:" #: ecommerce/templates/edx/credit/checkout.html:89 msgid "You deserve it." -msgstr "" +msgstr "Usted lo merece" #: ecommerce/templates/edx/credit/checkout.html:92 msgid "" "The hard work is over - you passed the course! Now get the credit you " "deserve to start or complete a degree." -msgstr "" +msgstr "El trabajo duro ha terminado: ¡aprobaste el curso! Ahora obtenga el crédito que se merece para comenzar o completar un título." #: ecommerce/templates/edx/credit/checkout.html:98 msgid "It's affordable." @@ -2258,40 +2309,40 @@ msgid "" "\n" " Please read {link_start}our FAQs to view common questions about our certificates.{link_end}\n" " " -msgstr "" +msgstr "\nLea {link_start}nuestras preguntas frecuentes para ver preguntas comunes sobre nuestros certificados.{link_end}" #: ecommerce/templates/edx/email_confirmation_required.html:16 msgid "You are enrolling in: " -msgstr "" +msgstr "Se está inscribiendo en:" #: ecommerce/templates/edx/email_confirmation_required.html:26 #, python-format msgid "" "An email has been sent to %(user_email)s with a link for you to activate " "your account." -msgstr "" +msgstr "Se ha enviado un correo electrónico a %(user_email)s con un enlace para que active su cuenta." #: ecommerce/templates/edx/email_confirmation_required.html:29 msgid "Why activate?" -msgstr "" +msgstr "¿Por qué activar?" #: ecommerce/templates/edx/email_confirmation_required.html:31 msgid "" "We ask you to activate your account to ensure it is really you creating the " "account and to prevent fraud." -msgstr "" +msgstr "Le pedimos que active su cuenta para asegurarse de que realmente está creando la cuenta y evitar el fraude." #: ecommerce/templates/edx/error.html:17 msgid "If you need assistance, contact edX support." -msgstr "" +msgstr "Si necesita ayuda, comuníquese con el soporte de edX." #: ecommerce/templates/edx/partials/_administration_menu.html:6 msgid "Coupons" -msgstr "" +msgstr "Cupones" #: ecommerce/templates/edx/partials/_administration_menu.html:8 msgid "Enterprise Coupons" -msgstr "" +msgstr "Cupones empresariales" #: ecommerce/templates/edx/partials/_base_navbar.html:10 msgid "Toggle navigation" @@ -2312,19 +2363,19 @@ msgstr "Iniciar sesión" #: ecommerce/templates/edx/partials/_staff_navbar.html:9 msgid "E-Commerce Course Administration" -msgstr "" +msgstr "Administración del curso de comercio electrónico" #: ecommerce/templates/edx/partials/_staff_navbar.html:14 msgid "E-Commerce Coupon Administration" -msgstr "" +msgstr "Administración de cupones de comercio electrónico" #: ecommerce/templates/edx/partials/_staff_navbar.html:19 msgid "E-Commerce Program Offers Administration" -msgstr "" +msgstr "Administración de ofertas del programa de comercio electrónico" #: ecommerce/templates/oscar/basket/basket.html:48 msgid "Your basket is empty" -msgstr "" +msgstr "Su cesto está vacío" #: ecommerce/templates/oscar/basket/basket.html:49 #, python-brace-format @@ -2333,11 +2384,11 @@ msgid "" " If you attempted to make a purchase, you have not been charged. Return to your {link_start}{link_middle}{homepage_url}dashboard{link_end} to try\n" " again, or {link_start}{homepage_url}{link_middle}contact {platform_name} Support{link_end}.\n" " " -msgstr "" +msgstr "\nSi intentó realizar una compra, no se le ha cobrado. Return to your {link_start}{link_middle}{homepage_url}dashboard{link_end} to try again, or {link_start}{homepage_url}{link_middle}contact {platform_name} Support{link_end}." #: ecommerce/templates/oscar/basket/messages/new_total.html:7 msgid "Your basket is now empty" -msgstr "" +msgstr "Su carrito de compras ahora está vacío" #: ecommerce/templates/oscar/basket/messages/new_total.html:10 #: ecommerce/templates/oscar/basket/messages/new_total.html:16 @@ -2347,36 +2398,36 @@ msgid "" " {strong_start}We’ve updated your quantity.{strong_end}\n" " {paragraph_start}Your cart includes {num_items} enrollment codes at a total cost of {total}, that you will receive via email.{paragraph_end}\n" " " -msgstr "" +msgstr "\n{strong_start}Hemos actualizado su cantidad.{strong_end} {paragraph_start}Su carrito incluye {num_items} códigos de inscripción a un costo total de {total}, que recibirá por correo electrónico.{paragraph_end}" #: ecommerce/templates/oscar/basket/messages/new_total.html:27 msgid "View basket" -msgstr "" +msgstr "Ver carrito de compras" #: ecommerce/templates/oscar/basket/messages/new_total.html:28 msgid "Checkout now" -msgstr "" +msgstr "Finalizar ahora" #: ecommerce/templates/oscar/basket/partials/add_voucher_form.html:11 msgid "Applying..." -msgstr "" +msgstr "Aplicando..." #: ecommerce/templates/oscar/basket/partials/add_voucher_form.html:16 msgid "Apply" -msgstr "" +msgstr "Aplicar" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:16 msgid "in your cart" -msgstr "" +msgstr "en su carrito" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:17 msgid "Your purchase contains the following" -msgstr "" +msgstr "Su compra contiene lo siguiente" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:36 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:57 msgid "Updating..." -msgstr "" +msgstr "Actualizando..." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:36 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:57 @@ -2386,11 +2437,11 @@ msgstr "Actualización" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:47 msgid "summary" -msgstr "" +msgstr "resumen" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:68 msgid "Discounts applied" -msgstr "" +msgstr "Descuento aplicado" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:80 #, python-format @@ -2398,7 +2449,7 @@ msgid "" "\n" " %(benefit)s discount provided by %(enterprise_customer_name)s.\n" " " -msgstr "" +msgstr "\n%(benefit)s descuento proporcionado por %(enterprise_customer_name)s." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:87 #, python-format @@ -2406,7 +2457,7 @@ msgid "" "\n" " %(benefit)s%% discount for your first upgrade applied.\n" " " -msgstr "" +msgstr "\n%(benefit)s%% descuento aplicado para su primera actualización." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:104 #, python-format @@ -2414,55 +2465,55 @@ msgid "" "\n" " Coupon %(voucher_code)s applied for %(total_benefit)s off\n" " " -msgstr "" +msgstr "\nCupón %(voucher_code)s aplicado para %(total_benefit)s de descuento" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:110 msgid "Remove coupon" -msgstr "" +msgstr "Borrar cupón" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:119 msgid "Add coupon code" -msgstr "" +msgstr "Añadir código de cupón" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:119 msgid "(optional)" -msgstr "" +msgstr "(opcional)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:128 msgid "TOTAL" -msgstr "" +msgstr "TOTAL" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:135 msgid "order details" -msgstr "" +msgstr "detalles del pedido" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:153 msgid "select payment method" -msgstr "" +msgstr "seleccionar el método de pago" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:155 msgid "Pay with a Credit Card" -msgstr "" +msgstr "Pagar con tarjeta de crédito" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:166 msgid "Pay with PayPal" -msgstr "" +msgstr "Pagar con PayPal" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:175 msgid "Pay with Apple Pay" -msgstr "" +msgstr "Pagar con Apple Pay" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:190 msgid "card holder information" -msgstr "" +msgstr "información del titular de la tarjeta" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:201 msgid "billing information" -msgstr "" +msgstr "Datos de facturación" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:203 msgid "Credit cards" -msgstr "" +msgstr "Tarjetas de crédito" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:210 msgid "Card Number (required)" @@ -2471,11 +2522,11 @@ msgstr "Número de tarjeta (obligatorio)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:210 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:220 msgid "Secure" -msgstr "" +msgstr "Seguro" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:213 msgid "Credit card icon" -msgstr "" +msgstr "Icono de tarjeta de crédito" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:219 msgid "Security Code (required)" @@ -2483,13 +2534,13 @@ msgstr "Código de seguridad (obligatorio)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:223 msgid "Help with CVV" -msgstr "" +msgstr "Ayuda sobre el CVV" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:226 msgid "" "The three last digits in the signature area on the back of your card. For " "American Express, it is the four digits on the front of the card." -msgstr "" +msgstr "Los tres últimos dígitos que aparecen la parte de firma del dorso de tu tarjeta. Para American Express, son los últimos cuatro dígitos de la parte delantera." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:233 msgid "Expiration (required)" @@ -2497,21 +2548,21 @@ msgstr "Fecha de caducidad (obligatorio)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:237 msgid "Month" -msgstr "" +msgstr "Mes" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:247 msgid "Year" -msgstr "" +msgstr "Año" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:264 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:274 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:152 msgid "Place Order" -msgstr "" +msgstr "Realizar pedido" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:23 msgid "Earn a valuable certificate to showcase the skills you learn in" -msgstr "" +msgstr "Obtenga un valioso certificado para mostrar las habilidades que aprende en" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:70 #, python-format @@ -2519,7 +2570,7 @@ msgid "" "\n" " %(benefit_value)s off\n" " " -msgstr "" +msgstr "\n%(benefit_value)s apagado" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:99 #, python-format @@ -2527,20 +2578,20 @@ msgid "" "\n" " Coupon code %(voucher_code)s applied\n" " " -msgstr "" +msgstr "\nCódigo de cupón %(voucher_code)s aplicado" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:116 msgid "Apply a coupon code" -msgstr "" +msgstr "Aplicar un código de cupón" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:164 #, python-format msgid "Checkout with %(title)s" -msgstr "" +msgstr "Pagar con %(title)s" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:166 msgid "Checkout" -msgstr "" +msgstr "Pagar" #. Translators: tags will bold the text within. Keep the #. tags and translate the text within. @@ -2549,15 +2600,15 @@ msgstr "" msgid "" "{strong_start}Note:{strong_end} To complete your enrollment, select Checkout" " or Checkout with PayPal." -msgstr "" +msgstr "{strong_start}Nota:{strong_end} Para completar su inscripción, seleccione Pagar o Pagar con PayPal." #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:185 msgid "Have questions?" -msgstr "" +msgstr "¿Tiene preguntas?" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:186 msgid "Please read our FAQs to view common questions about our certificates." -msgstr "" +msgstr "Por favor revise nuestra sección de FAQs para que vea dudas frecuentes sobre nuestros certificados." #: ecommerce/templates/oscar/basket/partials/seat_type.html:6 #, python-format @@ -2565,12 +2616,12 @@ msgid "" "\n" " %(seat_type)s Certificate\n" " " -msgstr "" +msgstr "\n%(seat_type)s Certificado" #: ecommerce/templates/oscar/checkout/cancel_checkout.html:7 #: ecommerce/templates/oscar/checkout/cancel_checkout.html:16 msgid "Checkout Cancelled" -msgstr "" +msgstr "Compra cancelada" #: ecommerce/templates/oscar/checkout/cancel_checkout.html:18 #, python-brace-format @@ -2579,20 +2630,20 @@ msgid "" " Your transaction has been cancelled. If you feel an error has occurred, contact {start_link}\n" " {payment_support_email}{end_link}.\n" " " -msgstr "" +msgstr "\nSu transacción ha sido cancelada. Si cree que se ha producido un error, póngase en contacto con {start_link} {payment_support_email}{end_link}." #: ecommerce/templates/oscar/checkout/error.html:7 #: ecommerce/templates/oscar/checkout/error.html:18 msgid "Checkout Error" -msgstr "" +msgstr "Error en la compra" #: ecommerce/templates/oscar/checkout/error.html:19 msgid "An error has occurred with your payment." -msgstr "" +msgstr "Se ha producido un error con tu pago." #: ecommerce/templates/oscar/checkout/error.html:19 msgid "You have not been charged." -msgstr "" +msgstr "No se han cobrado." #: ecommerce/templates/oscar/checkout/error.html:21 #, python-brace-format @@ -2601,38 +2652,38 @@ msgid "" " Please try to submit your payment again. If this problem persists, please refer to our {start_link}\n" " Payments FAQ {end_link} for troubleshooting tips.\n" " " -msgstr "" +msgstr "\nIntente enviar su pago nuevamente. Si el problema persiste, consulte nuestras {start_link} Preguntas frecuentes sobre pagos {end_link} para obtener sugerencias para solucionar el problema." #: ecommerce/templates/oscar/checkout/payment_error.html:7 #: ecommerce/templates/oscar/checkout/payment_error.html:16 msgid "Payment Failed" -msgstr "" +msgstr "El pago ha fallado" #: ecommerce/templates/oscar/checkout/payment_error.html:18 #, python-brace-format msgid "" "An error occurred while processing your payment. {strong_start}You have not " "been charged.{strong_end}" -msgstr "" +msgstr "Ocurrió un error al procesar su pago. {strong_start}No se le ha cobrado.{strong_end}" #: ecommerce/templates/oscar/checkout/payment_error.html:25 #, python-brace-format msgid "" "Please wait a few minutes and then try again. For help, check our " "{start_link}Help Center{end_link}." -msgstr "" +msgstr "Espere unos minutos y vuelva a intentarlo. Para obtener ayuda, consulte nuestro {start_link}Centro de ayuda{end_link}." #: ecommerce/templates/oscar/checkout/payment_error.html:32 #, python-brace-format msgid "To try again, return to your {start_link}dashboard{end_link}." -msgstr "" +msgstr "Para volver a intentarlo, vuelve a tu {start_link}panel{end_link}." #: ecommerce/templates/oscar/checkout/sdn_failure.html:9 msgid "" "\n" " SDN Check Failure\n" " " -msgstr "" +msgstr "\nError de comprobación de SDN" #: ecommerce/templates/oscar/checkout/sdn_failure.html:26 msgid "" @@ -2640,7 +2691,7 @@ msgid "" "one or more records on a U.S. Treasury Department sanctions list. This means" " we cannot complete your transaction or provide you with services and must " "suspend your learner account." -msgstr "" +msgstr "Lamentablemente, el perfil de su cuenta o la información de pago parecen coincidir con uno o más registros en una lista de sanciones del Departamento del Tesoro de EE. UU. Esto significa que no podemos completar su transacción ni brindarle servicios y debemos suspender su cuenta de alumno." #: ecommerce/templates/oscar/checkout/sdn_failure.html:35 #, python-brace-format @@ -2649,13 +2700,13 @@ msgid "" "{ofac_email_link} ofac.reconsideration@treasury.gov{end_link} for " "information about options for clearing a match. Your account will be " "suspended until this matter is resolved satisfactorily." -msgstr "" +msgstr "Si tiene preguntas sobre cómo borrar una coincidencia, comuníquese con {ofac_email_link} ofac.reconsideration@treasury.gov{end_link} para obtener información sobre las opciones para borrar una coincidencia. Su cuenta será suspendida hasta que este asunto se resuelva satisfactoriamente." #: ecommerce/templates/oscar/communication/email_base.html:189 #: ecommerce/templates/oscar/customer/email_base.html:189 #, python-format msgid "Copyright © %(year)s %(platform_name)s. All rights reserved." -msgstr "" +msgstr "Copyright © %(year)s %(platform_name)s. Reservados todos los derechos." #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:9 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:4 @@ -2669,7 +2720,7 @@ msgstr "Hola %(full_name)s," msgid "" "Thank you for purchasing %(course_title)s. A charge will appear on your " "credit or debit card statement with a company name of \"%(platform_name)s\"." -msgstr "" +msgstr "Gracias por comprar %(course_title)s. Aparecerá un cargo en el extracto de su tarjeta de crédito o débito con el nombre de la empresa "%(platform_name)s\"" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:13 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:8 @@ -2685,12 +2736,12 @@ msgstr "Ya puedes acceder a tu curso y completar tu registro (si se requiere) en msgid "" "To explore other great courses, visit the %(platform_name)s website. More " "courses are added every day!" -msgstr "" +msgstr "Para explorar otros excelentes cursos, visite el sitio web %(platform_name)s. ¡Cada día se añaden más cursos!" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:17 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:43 msgid "View Payment Information" -msgstr "" +msgstr "Ver información de pago" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:20 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:14 @@ -2716,7 +2767,7 @@ msgstr "Recibo de Confirmación para:" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:11 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:12 msgid "To view your payment information, visit the following website." -msgstr "" +msgstr "Para ver su información de pago, visite el siguiente sitio web." #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:16 #, python-format @@ -2733,11 +2784,11 @@ msgstr "Pedido cursado" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:13 msgid "Payment Confirmation" -msgstr "" +msgstr "Confirmación de pago" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:27 msgid "Payment confirmation for:" -msgstr "" +msgstr "Confirmación de pago para:" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:55 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:4 @@ -2745,7 +2796,7 @@ msgstr "" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:5 #, python-format msgid "Dear %(full_name)s," -msgstr "" +msgstr "Hola %(full_name)s" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:60 #, python-format @@ -2753,7 +2804,7 @@ msgid "" "\n" " Thank you for purchasing %(credit_hours)s credit hours from %(credit_provider)s for %(course_title)s. A charge will appear on your credit or debit card statement with a company name of \"%(platform_name)s\".\n" " " -msgstr "" +msgstr "\nGracias por comprar horas de crédito %(credit_hours)s de %(credit_provider)s por %(course_title)s. Aparecerá un cargo en el extracto de su tarjeta de crédito o débito con el nombre de la empresa \"%(platform_name)s\"." #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:67 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:8 @@ -2763,7 +2814,7 @@ msgid "" "%(credit_provider)s website. For a link to request credit from " "%(credit_provider)s, or to see the status of your credit request, go to your" " %(platform_name)s dashboard." -msgstr "" +msgstr "Para recibir el crédito de su curso, también debe solicitar crédito en el sitio web %(credit_provider)s. Para obtener un enlace para solicitar crédito de %(credit_provider)s, o para ver el estado de su solicitud de crédito, vaya a su panel de control %(platform_name)s." #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:71 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:10 @@ -2771,18 +2822,18 @@ msgstr "" msgid "" "To explore other credit-eligible courses, visit the %(platform_name)s " "website. We add new courses frequently!" -msgstr "" +msgstr "Para explorar otros cursos aptos para créditos, visite el sitio web %(platform_name)s. ¡Agregamos nuevos cursos con frecuencia!" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:74 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:15 msgid "Thank you. We hope you enjoyed your course!" -msgstr "" +msgstr "Gracias. ¡Esperamos que disfrute del curso!" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:75 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:16 #, python-format msgid "The %(platform_name)s team" -msgstr "" +msgstr "El equipo %(platform_name)s" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:88 #, python-format @@ -2790,11 +2841,11 @@ msgid "" "\n" " You received this message because you purchased credit hours for %(course_title)s, an %(platform_name)s course.\n" " " -msgstr "" +msgstr "\nRecibió este mensaje porque compró horas de crédito para %(course_title)s, un curso %(platform_name)s." #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:2 msgid "Payment confirmation for: " -msgstr "" +msgstr "Confirmación de pago para:" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:6 #, python-format @@ -2802,14 +2853,14 @@ msgid "" "Thank you for purchasing %(credit_hours)s credit hours from " "%(credit_provider)s for %(course_title)s. A charge will appear on your " "credit or debit card statement with a company name of \"%(platform_name)s\"." -msgstr "" +msgstr "Gracias por comprar horas de crédito %(credit_hours)s de %(credit_provider)s por %(course_title)s. Aparecerá un cargo en el extracto de su tarjeta de crédito o débito con el nombre de la empresa \"%(platform_name)s\"" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:18 #, python-format msgid "" "You received this message because you purchased credit hours for " "%(course_title)s, an %(platform_name)s course." -msgstr "" +msgstr "Recibió este mensaje porque compró horas de crédito para %(course_title)s, un curso %(platform_name)s." #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_subject.txt:2 msgid "Order Receipt" @@ -2817,7 +2868,7 @@ msgstr "Confirmación de Pedido" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:14 msgid "For Business" -msgstr "" +msgstr "Para Negocios" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:26 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:6 @@ -2825,7 +2876,7 @@ msgstr "" msgid "" "Thank you for purchasing access to %(course_name)s. Let's get your group " "ready to learn with edX:" -msgstr "" +msgstr "Gracias por adquirir el acceso a %(course_name)s. Preparemos a su grupo para aprender con edX:" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:29 #, python-brace-format @@ -2833,22 +2884,22 @@ msgid "" "\n" " Download and save the {link_start}{download_csv_link}{link_middle} enrollment code file.{link_end}\n" " " -msgstr "" +msgstr "\nDescargue y guarde el archivo de código de inscripción {link_start}{download_csv_link}{link_middle}.{link_end}" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:34 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:9 msgid "Distribute one code per learner before the expiration date." -msgstr "" +msgstr "Distribuya un código por alumno antes de la fecha de vencimiento." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:35 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:10 msgid "Pro tip: Track which code is associated with which person." -msgstr "" +msgstr "Consejo profesional: Rastrear cuál es el código que está asociado con determinada persona." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:36 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:11 msgid "Learners sign-in/register with edX and enroll for the course." -msgstr "" +msgstr "Los alumnos inician sesión o se registran en edX y se inscriben en el curso." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:39 #, python-brace-format @@ -2856,7 +2907,7 @@ msgid "" "\n" " To view your payment information, log in to see your Order History, under {link_start}{order_history_url}{link_middle}Account Settings{link_end}.\n" " " -msgstr "" +msgstr "\nPara ver su información de pago, inicie sesión para ver su historial de pedidos, en {link_start}{order_history_url}{link_middle}Configuración de la cuenta{link_end}." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:45 #, python-brace-format @@ -2864,35 +2915,35 @@ msgid "" "\n" " For more information and assistance, check our {link_start}Help Center{link_end}\n" " " -msgstr "" +msgstr "\nPara obtener más información y asistencia, consulte nuestro {link_start}Centro de ayuda{link_end}" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:50 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:16 msgid "Thank You" -msgstr "" +msgstr "Gracias" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:61 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:18 msgid "By purchasing, you and your organization agree to the following terms:" -msgstr "" +msgstr "Al comprar, tú y tu organización aceptan los siguientes términos:" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:63 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:20 msgid "" "Each code is valid for the one course covered and can be used only one time." -msgstr "" +msgstr "Cada código es válido para el curso contemplado y solo se puede usar una vez." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:64 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:21 msgid "You are responsible for distributing codes to your learners." -msgstr "" +msgstr "Usted es responsable de distribuir los códigos a sus alumnos." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:65 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:22 msgid "" "Each code will expire in one year from date of purchase or, if earlier, once" " the course is closed." -msgstr "" +msgstr "Cada código caducará dentro de un año a partir de la fecha de compra o una vez se cierre el curso si la fecha es anterior." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:66 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:23 @@ -2904,39 +2955,39 @@ msgstr "Si un curso no está definido como \"a tu propio ritmo\", te recomendamo #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:67 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:24 msgid "You may not resell codes to third parties." -msgstr "" +msgstr "No puede revender códigos a terceros." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:68 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:25 msgid "All sales final. No refunds." -msgstr "" +msgstr "Todas las ventas finales. Sin reembolsos." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:2 msgid "Order confirmation for: " -msgstr "" +msgstr "Confirmación de pedido para:" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:8 #, python-format msgid "" "Please visit %(download_csv_link)s to download and save the enrollment code " "file." -msgstr "" +msgstr "Visite %(download_csv_link)s para descargar y guardar el archivo del código de inscripción." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:13 #, python-format msgid "" "To view your payment information, log in to see your Order History, under " "Account Settings at %(order_history_url)s." -msgstr "" +msgstr "Para ver su información de pago, inicie sesión para ver su Historial de pedidos, en Configuración de la cuenta en %(order_history_url)s." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:14 msgid "For more information and assistance, contact info@edx.org." -msgstr "" +msgstr "Para obtener más información y asistencia, comuníquese con info@edx.org." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_subject.txt:2 #, python-format msgid "%(partner_name)s: Order Confirmation: [%(order_number)s]" -msgstr "" +msgstr "%(partner_name)s: Confirmación de pedido: [%(order_number)s]" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:6 #: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:6 @@ -2949,15 +3000,15 @@ msgstr "Acciones" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:12 msgid "Edit category" -msgstr "" +msgstr "Editar categoría" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:17 msgid "Add child category" -msgstr "" +msgstr "Añadir categoría infantil" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:22 msgid "Edit children" -msgstr "" +msgstr "Editar niños" #: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:27 #: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:14 @@ -2972,7 +3023,7 @@ msgid "" "\n" " Created product variant '%(name)s'.\n" " " -msgstr "" +msgstr "\n Variante de producto creada '%(name)s'.\n " #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:17 #, python-format @@ -2980,7 +3031,7 @@ msgid "" "\n" " Created variant of '%(parent_name)s'.\n" " " -msgstr "" +msgstr "\n Variante de '%(parent_name)s' creada.\n " #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:25 #, python-format @@ -2988,7 +3039,7 @@ msgid "" "\n" " Updated product variant '%(name)s'.\n" " " -msgstr "" +msgstr "\n Variante de producto actualizada '%(name)s'.\n " #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:31 #, python-format @@ -2996,7 +3047,7 @@ msgid "" "\n" " Updated a variant of '%(parent_name)s'.\n" " " -msgstr "" +msgstr "\n Actualización de variante de '%(parent_name)s'.\n " #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:42 #, python-format @@ -3004,7 +3055,7 @@ msgid "" "\n" " Created product '%(name)s'.\n" " " -msgstr "" +msgstr "\n Producto creado '%(name)s'.\n " #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:48 #, python-format @@ -3012,11 +3063,11 @@ msgid "" "\n" " Updated product '%(name)s'.\n" " " -msgstr "" +msgstr "\n Actualización de producto '%(name)s'.\n " #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:60 msgid "Edit again" -msgstr "" +msgstr "Volver a editar" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:45 #, python-brace-format @@ -3025,139 +3076,139 @@ msgid "" " You are currently editing a product variant of\n" " {start_anchor}{title}{end_anchor}.\n" " " -msgstr "" +msgstr "\nActualmente está editando una variante de producto de {start_anchor}{title}{end_anchor}." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:61 msgid "Sections" -msgstr "" +msgstr "Secciones" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:73 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:103 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:34 msgid "Product details" -msgstr "" +msgstr "Detalles del producto" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:78 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:146 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:257 msgid "Attributes" -msgstr "" +msgstr "Atributos" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:81 msgid "Images" -msgstr "" +msgstr "Imágenes" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:84 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:188 msgid "Stock and pricing" -msgstr "" +msgstr "Stock y precios" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:87 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:248 msgid "Variants" -msgstr "" +msgstr "variantes" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:90 msgid "Upselling" -msgstr "" +msgstr "Ventas adicionales" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:148 msgid "Product Type:" -msgstr "" +msgstr "Tipo de producto:" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:169 msgid "Upload, change or remove images" -msgstr "" +msgstr "Subir, cambiar o eliminar imágenes" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:194 msgid "SKU" -msgstr "" +msgstr "SKU" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:196 msgid "Num in stock" -msgstr "" +msgstr "Número en stock" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:197 msgid "Num allocated" -msgstr "" +msgstr "Número asignado" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:198 msgid "Low stock threshold" -msgstr "" +msgstr "Umbral de stock bajo" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:201 msgid "Cost price" -msgstr "" +msgstr "Precio de costo" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:202 msgid "Price (excl tax)" -msgstr "" +msgstr "Precio (sin impuestos)" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:203 msgid "Retail price" -msgstr "" +msgstr "Precio al por menor" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:204 msgid "Delete?" -msgstr "" +msgstr "¿Eliminar?" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:249 msgid "Adding..." -msgstr "" +msgstr "Añadiendo..." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:251 msgid "Add variant" -msgstr "" +msgstr "Añadir variante" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:256 msgid "Title" -msgstr "" +msgstr "Título" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:258 msgid "Stock records" -msgstr "" +msgstr "Registros de inventario" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:280 msgid "This product does not have any variants." -msgstr "" +msgstr "Este producto no tiene variantes." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:282 msgid "One can't add variants to this product at this point." -msgstr "" +msgstr "No se pueden agregar variantes a este producto en este momento." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:284 msgid "This is likely because this product still has stock records." -msgstr "" +msgstr "Es probable que esto se deba a que este producto todavía tiene registros de existencias." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:300 msgid "Recommended products" -msgstr "" +msgstr "Productos recomendados" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:325 msgid "or" -msgstr "" +msgstr "o" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:327 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:331 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:334 msgid "Saving..." -msgstr "" +msgstr "Guardando..." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:328 msgid "Save and add another variant" -msgstr "" +msgstr "Guardar y agregar otra variante" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:332 msgid "Save and continue editing" -msgstr "" +msgstr "Guardar y continuar editando" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:335 msgid "Save" -msgstr "" +msgstr "Guardar" #: ecommerce/templates/oscar/dashboard/index.html:27 msgid "Store Statistics (Last 24 Hours)" -msgstr "" +msgstr "Estadísticas de la tienda (últimas 24 horas)" #: ecommerce/templates/oscar/dashboard/index.html:34 msgid "New Customers" @@ -3166,19 +3217,19 @@ msgstr "Nuevos clientes" #: ecommerce/templates/oscar/dashboard/index.html:35 #: ecommerce/templates/oscar/dashboard/index.html:41 msgid "Revenue" -msgstr "" +msgstr "Ingresos" #: ecommerce/templates/oscar/dashboard/index.html:36 msgid "Average order cost" -msgstr "" +msgstr "Coste promedio por pedido" #: ecommerce/templates/oscar/dashboard/index.html:37 msgid "Average (paid) order cost" -msgstr "" +msgstr "Coste promedio por pedido (pagados)" #: ecommerce/templates/oscar/dashboard/index.html:67 msgid "Products and vouchers" -msgstr "" +msgstr "Productos y vouchers" #: ecommerce/templates/oscar/dashboard/index.html:69 msgid "Total products" @@ -3186,83 +3237,83 @@ msgstr "Total productos" #: ecommerce/templates/oscar/dashboard/index.html:73 msgid "Active Vouchers" -msgstr "" +msgstr "Vouchers activos" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:6 #, python-format msgid "%(name)s | Offers " -msgstr "" +msgstr "%(name)s | ofertas" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:25 msgid "Reinstating..." -msgstr "" +msgstr "Restableciendo..." #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:25 msgid "Reinstate offer" -msgstr "" +msgstr "Restablecer oferta" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:26 msgid "Suspending..." -msgstr "" +msgstr "Suspendiendo..." #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:26 msgid "Suspend offer" -msgstr "" +msgstr "Suspender oferta" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:27 msgid "Delete offer" -msgstr "" +msgstr "Eliminar oferta" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:38 msgid "Offer currently available" -msgstr "" +msgstr "Oferta actualmente disponible" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:39 msgid "Offer not available due to restrictions!" -msgstr "" +msgstr "¡Oferta no disponible debido a restricciones!" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:41 msgid "Total cost:" -msgstr "" +msgstr "Costo total" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:42 msgid "Number of orders:" -msgstr "" +msgstr "Numero de ordenes:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:43 msgid "Number of uses:" -msgstr "" +msgstr "Número de usos:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:48 msgid "Date created:" -msgstr "" +msgstr "Fecha de creación:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:49 msgid "Offer details" -msgstr "" +msgstr "Detalles de la oferta" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:67 #: ecommerce/templates/oscar/dashboard/offers/summary.html:20 msgid "Incentive" -msgstr "" +msgstr "Incentivo" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:72 #: ecommerce/templates/oscar/dashboard/offers/summary.html:26 msgid "Condition" -msgstr "" +msgstr "Condición" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:77 #: ecommerce/templates/oscar/dashboard/offers/summary.html:31 msgid "Restrictions" -msgstr "" +msgstr "Restricciones" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:92 msgid "Export to CSV" -msgstr "" +msgstr "Exportar a CSV" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:93 msgid "Orders that used this offer" -msgstr "" +msgstr "Pedidos que usaron esta oferta" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:97 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:68 @@ -3271,7 +3322,7 @@ msgstr "Número de pedido" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:98 msgid "Order date" -msgstr "" +msgstr "Fecha de orden" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:99 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:292 @@ -3280,11 +3331,11 @@ msgstr "Total pedido" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:100 msgid "Cost" -msgstr "" +msgstr "Precio" #: ecommerce/templates/oscar/dashboard/offers/summary.html:4 msgid "Offer summary" -msgstr "" +msgstr "Resumen de la oferta" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:6 #, python-format @@ -3292,26 +3343,26 @@ msgid "" "\n" " Order %(number)s - Line #%(id)s\n" " " -msgstr "" +msgstr "\nOrden %(number)s - Línea %(id)s" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:22 #, python-format msgid "Line #%(id)s" -msgstr "" +msgstr "Línea #%(id)s" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:27 #, python-format msgid "Order #%(number)s - Line #%(id)s" -msgstr "" +msgstr "Orden #%(number)s - Línea #%(id)s" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:38 msgctxt "Product title" msgid "Title" -msgstr "" +msgstr "Título" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:44 msgid "Product Type" -msgstr "" +msgstr "tipo de producto" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:47 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:140 @@ -3321,48 +3372,48 @@ msgstr "UPC" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:54 msgid "Product Options" -msgstr "" +msgstr "Opciones de productos" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:67 msgid "Partner details" -msgstr "" +msgstr "Detalles del socio" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:77 msgid "Partner SKU" -msgstr "" +msgstr "SKU de socio" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:83 msgid "Shipping details" -msgstr "" +msgstr "Detalles de envío" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:87 msgid "Partner reference number" -msgstr "" +msgstr "Número de referencia del socio" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:90 msgid "Partner notes" -msgstr "" +msgstr "Notas de socios" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:93 msgid "Estimate dispatch date" -msgstr "" +msgstr "Estimar fecha de envío" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:102 msgid "Shipping status" -msgstr "" +msgstr "Estado del envío" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:107 msgid "State" -msgstr "" +msgstr "Estado de la tarea" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:119 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:150 msgid "No shipping events have occurred." -msgstr "" +msgstr "No se han producido eventos de envío." #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:127 msgid "Shipping events" -msgstr "" +msgstr "Eventos de envío" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:132 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:163 @@ -3393,11 +3444,11 @@ msgstr "Fecha" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:158 msgid "Payment events" -msgstr "" +msgstr "Eventos de pago" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:179 msgid "No payment events have occurred." -msgstr "" +msgstr "No se han producido eventos de pago." #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:10 #, python-format @@ -3819,11 +3870,11 @@ msgstr "Confirmar" #: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:5 msgid "Approve Credit and Revoke" -msgstr "" +msgstr "Aprobar crédito y revocar" #: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:8 msgid "Approve Credit Only" -msgstr "" +msgstr "Aprobar solo crédito" #: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:14 msgid "Deny" @@ -4015,4 +4066,4 @@ msgstr "Este cliente no ha escrito ningún reseña aún." #: ecommerce/urls.py:45 msgid "E-Commerce Service Administration" -msgstr "" +msgstr "Administración de servicios de comercio electrónico" diff --git a/ecommerce/conf/locale/es_ES/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/es_ES/LC_MESSAGES/djangojs.mo index 53b9375be08..a55d4fcd5eb 100644 Binary files a/ecommerce/conf/locale/es_ES/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/es_ES/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/es_ES/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/es_ES/LC_MESSAGES/djangojs.po index 8e994469223..2bcda0ce666 100644 --- a/ecommerce/conf/locale/es_ES/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/es_ES/LC_MESSAGES/djangojs.po @@ -13,6 +13,7 @@ # Beatriz González Gutiérrez , 2016 # Feli555 , 2016 # Iria Diaz , 2017 +# Jesica Greco, 2022 # jorge jorge marrero , 2016 # Juan Rodríguez de Vera Mouliaá , 2016 # Mariangeles Fernandez , 2015 @@ -22,10 +23,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" -"Last-Translator: UAMx , 2022\n" -"Language-Team: Spanish (Spain) (http://www.transifex.com/open-edx/edx-platform/language/es_ES/)\n" +"Last-Translator: Jesica Greco, 2022\n" +"Language-Team: Spanish (Spain) (http://app.transifex.com/open-edx/edx-platform/language/es_ES/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -40,37 +41,37 @@ msgstr "Este campo es obligatorio." #: ecommerce/static/js/models/coupon_model.js:34 #: ecommerce/static/js/models/enterprise_coupon_model.js:16 msgid "This value must be a number." -msgstr "" +msgstr "Este valor debe ser numérico" #: ecommerce/static/js/models/coupon_model.js:35 #: ecommerce/static/js/models/enterprise_coupon_model.js:17 msgid "This value must be a date." -msgstr "" +msgstr "Este valor debe ser una fecha." #: ecommerce/static/js/models/coupon_model.js:36 msgid "At least one seat type must be selected." -msgstr "" +msgstr "Se debe seleccionar al menos un tipo de asiento." #: ecommerce/static/js/models/coupon_model.js:72 msgid "This field must be empty or contain 1-16 alphanumeric characters." -msgstr "" +msgstr "Este campo debe estar vacío o contener de 1 a 16 caracteres alfanuméricos." #: ecommerce/static/js/models/coupon_model.js:81 #, javascript-format msgid "Email domain {%s} is invalid." -msgstr "" +msgstr "El dominio de correo electrónico {%s} no es válido." #: ecommerce/static/js/models/coupon_model.js:98 msgid "Must occur after start date" -msgstr "" +msgstr "Debe ocurrir después de la fecha de inicio" #: ecommerce/static/js/models/coupon_model.js:128 msgid "Max uses for multi-use coupons must be higher than 2." -msgstr "" +msgstr "Los usos máximos para cupones de usos múltiples deben ser superiores a 2." #: ecommerce/static/js/models/coupon_model.js:152 msgid "Must occur before end date" -msgstr "" +msgstr "Debe ocurrir antes de la fecha de finalización" #: ecommerce/static/js/models/coupon_model.js:174 msgid "A valid course ID is required" @@ -86,15 +87,15 @@ msgstr "Debes seleccionar un curso" #: ecommerce/static/js/models/course_model.js:60 msgid "You must choose if an honor seat should be created." -msgstr "" +msgstr "Debe elegir si se debe crear un asiento de honor." #: ecommerce/static/js/models/course_model.js:77 msgid "The verification deadline must occur AFTER the upgrade deadline." -msgstr "" +msgstr "La fecha límite de verificación deberá ser DESPUÉS de haber transcurrido la fecha de actualización." #: ecommerce/static/js/models/course_model.js:86 msgid "Product validation failed." -msgstr "" +msgstr "Fallo en la validación del producto." #: ecommerce/static/js/models/course_model.js:94 #: ecommerce/static/js/views/dynamic_catalog_view.js:70 @@ -108,27 +109,27 @@ msgstr "Nombre del curso" #: ecommerce/static/js/models/course_model.js:96 #: ecommerce/static/js/views/course_list_view.js:77 msgid "Course Type" -msgstr "" +msgstr "Tipo de curso" #: ecommerce/static/js/models/course_model.js:97 msgid "Verification Deadline" -msgstr "" +msgstr "Fecha Límite Verificada" #: ecommerce/static/js/models/course_model.js:98 msgid "Include Honor Seat" -msgstr "" +msgstr "Incluir asiento de honor" #: ecommerce/static/js/models/course_seats/course_seat.js:28 msgid "All course seats must have a price." -msgstr "" +msgstr "Todos los asientos del curso deben tener un precio." #: ecommerce/static/js/models/course_seats/course_seat.js:45 msgid "Verified seats must have an upgrade deadline." -msgstr "" +msgstr "Los asientos verificados deben tener una fecha límite de actualización." #: ecommerce/static/js/models/course_seats/course_seat.js:53 msgid "The upgrade deadline must occur BEFORE the verification deadline." -msgstr "" +msgstr "El plazo de actualización debe ocurrir ANTES de la fecha límite de verificación." #: ecommerce/static/js/models/course_seats/course_seat.js:84 msgid "Verified" @@ -137,7 +138,7 @@ msgstr "Verificado" #: ecommerce/static/js/models/course_seats/course_seat.js:86 #: ecommerce/static/js/views/course_form_view.js:77 msgid "Credit" -msgstr "" +msgstr "Crédito" #: ecommerce/static/js/models/course_seats/course_seat.js:89 msgid "Professional" @@ -157,35 +158,35 @@ msgstr "Certificado verificado" #: ecommerce/static/js/models/course_seats/course_seat.js:105 msgid "Professional Certificate" -msgstr "" +msgstr "Certificado profesional." #: ecommerce/static/js/models/course_seats/course_seat.js:108 msgid "Honor Certificate" -msgstr "" +msgstr "Certificado de Honor" #: ecommerce/static/js/models/course_seats/course_seat.js:111 msgid "No Certificate" -msgstr "" +msgstr "Sin Certificado" #: ecommerce/static/js/models/course_seats/credit_seat.js:26 msgid "All credit seats must have a credit provider." -msgstr "" +msgstr "Todas las plazas de crédito deben tener un proveedor de crédito." #: ecommerce/static/js/models/course_seats/credit_seat.js:30 msgid "Please select a valid credit provider." -msgstr "" +msgstr "Seleccione un proveedor de crédito válido." #: ecommerce/static/js/models/course_seats/credit_seat.js:39 msgid "All credit seats must designate a number of credit hours." -msgstr "" +msgstr "Todas las plazas de crédito deben designar un número de horas de crédito." #: ecommerce/static/js/models/enterprise_coupon_model.js:18 msgid "This value must be a valid email." -msgstr "" +msgstr "Este valor debe ser un correo electrónico válido." #: ecommerce/static/js/pages/basket_page.js:27 msgid "Problem occurred during checkout. Please contact support." -msgstr "" +msgstr "Ocurrió un problema durante el pago. Póngase en contacto con el soporte." #: ecommerce/static/js/pages/basket_page.js:101 msgid "This field is required" @@ -193,31 +194,31 @@ msgstr "Este campo es obligatorio" #: ecommerce/static/js/pages/basket_page.js:145 msgid "Invalid card number" -msgstr "" +msgstr "Número de tarjeta no válido" #: ecommerce/static/js/pages/basket_page.js:147 msgid "Unsupported card type" -msgstr "" +msgstr "Tipo de tarjeta no admitido" #: ecommerce/static/js/pages/basket_page.js:149 msgid "Invalid security number" -msgstr "" +msgstr "Número de seguridad inválido" #: ecommerce/static/js/pages/basket_page.js:154 msgid "Invalid month" -msgstr "" +msgstr "Mes inválido" #: ecommerce/static/js/pages/basket_page.js:156 msgid "Invalid year" -msgstr "" +msgstr "Año inválido" #: ecommerce/static/js/pages/basket_page.js:158 msgid "Card expired" -msgstr "" +msgstr "Caducidad tarjeta" #: ecommerce/static/js/pages/basket_page.js:474 msgid "" -msgstr "" +msgstr "" #: ecommerce/static/js/pages/basket_page.js:475 msgid "State/Province (required)" @@ -226,25 +227,25 @@ msgstr "Estado/Provincia (obligatorio)" #: ecommerce/static/js/pages/coupon_create_page.js:12 #: ecommerce/static/js/pages/enterprise_coupon_create_page.js:12 msgid "Create New Coupon" -msgstr "" +msgstr "Crear cupón nuevo" #: ecommerce/static/js/pages/coupon_detail_page.js:13 #: ecommerce/static/js/pages/enterprise_coupon_detail_page.js:13 msgid "View Coupon" -msgstr "" +msgstr "Ver cupón" #: ecommerce/static/js/pages/coupon_edit_page.js:13 #: ecommerce/static/js/pages/enterprise_coupon_edit_page.js:13 msgid "Edit Coupon" -msgstr "" +msgstr "Editar cupón" #: ecommerce/static/js/pages/coupon_list_page.js:10 msgid "Coupon Codes" -msgstr "" +msgstr "Códigos de cupón" #: ecommerce/static/js/pages/course_create_page.js:12 msgid "Create New Course" -msgstr "" +msgstr "Crear un nuevo curso" #: ecommerce/static/js/pages/course_detail_page.js:13 msgid "View Course" @@ -252,118 +253,118 @@ msgstr "Ver curso" #: ecommerce/static/js/pages/course_edit_page.js:13 msgid "Edit Course" -msgstr "" +msgstr "Editar curso" #: ecommerce/static/js/pages/course_list_page.js:10 msgid "Courses" -msgstr "" +msgstr "Cursos" #: ecommerce/static/js/pages/enterprise_coupon_list_page.js:10 msgid "Enterprise Coupon Codes" -msgstr "" +msgstr "Códigos de cupones empresariales" #: ecommerce/static/js/pages/offer_page.js:14 msgid "Redeem" -msgstr "" +msgstr "Canjear" #: ecommerce/static/js/pages/receipt_page.js:21 msgid "" "Caution! Using the back button on this page may cause you to be charged " "again." -msgstr "" +msgstr "¡Precaución! Si utiliza el botón Atrás de esta página, es posible que se le vuelva a cobrar." #. Translators: Do not translate "Apple Pay". #: ecommerce/static/js/payment_processors/cybersource.js:225 msgid "" "Apple Pay is not available at this time. Please try another payment method." -msgstr "" +msgstr "Apple Pay no está disponible en este momento. Por favor, utiliza otro método de pago." #: ecommerce/static/js/payment_processors/cybersource.js:255 msgid "" "An error occurred while processing your payment. You have NOT been charged. " "Please try again, or select another payment method." -msgstr "" +msgstr "Ocurrió un error al procesar su pago. NO te han cobrado. Vuelva a intentarlo o seleccione otro método de pago." #: ecommerce/static/js/payment_processors/stripe.js:71 msgid "" "An error occurred while attempting to process your payment. You have not " "been charged. Please check your payment details, and try again." -msgstr "" +msgstr "Ocurrió un error al intentar procesar su pago. No te han cobrado. Verifique los detalles de su pago y vuelva a intentarlo." #: ecommerce/static/js/payment_processors/stripe.js:110 msgid "An error occurred while processing your payment. Please try again." -msgstr "" +msgstr "Ocurrió un error al procesar su pago. Inténtalo de nuevo." #: ecommerce/static/js/utils/utils.js:184 msgid "Trailing comma not allowed." -msgstr "" +msgstr "No se permite la coma final." #: ecommerce/static/js/views/coupon_detail_view.js:108 #: ecommerce/static/js/views/coupon_form_view.js:62 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:30 msgid "Can be used once by one customer" -msgstr "" +msgstr "Puede ser utilizado una vez por un cliente" #: ecommerce/static/js/views/coupon_detail_view.js:110 #: ecommerce/static/js/views/coupon_form_view.js:70 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:38 msgid "Can be used multiple times by multiple customers" -msgstr "" +msgstr "Puede ser utilizado varias veces por varios clientes" #: ecommerce/static/js/views/coupon_detail_view.js:112 #: ecommerce/static/js/views/coupon_form_view.js:66 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:34 msgid "Can be used once by multiple customers" -msgstr "" +msgstr "Puede ser utilizado una vez por múltiples clientes" #: ecommerce/static/js/views/coupon_form_view.js:51 msgid "Enrollment Code" -msgstr "" +msgstr "Código de inscripción" #: ecommerce/static/js/views/coupon_form_view.js:55 msgid "Discount Code" -msgstr "" +msgstr "Código de descuento" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" -msgstr "" +msgstr "Guardar cambios" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" -msgstr "" +msgstr "Crear cupón" #: ecommerce/static/js/views/coupon_list_view.js:35 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:24 msgid "Name" -msgstr "" +msgstr "Nombre" #: ecommerce/static/js/views/coupon_list_view.js:42 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:31 msgid "Created" -msgstr "" +msgstr "Creado" #: ecommerce/static/js/views/coupon_list_view.js:49 msgid "Custom Code" -msgstr "" +msgstr "Código personalizado" #: ecommerce/static/js/views/coupon_list_view.js:55 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:44 msgid "Client" -msgstr "" +msgstr "Cliente" #: ecommerce/static/js/views/coupon_list_view.js:61 msgid "Category" -msgstr "" +msgstr "Categoría" #: ecommerce/static/js/views/coupon_list_view.js:67 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:62 msgid "Coupon Report" -msgstr "" +msgstr "Informe de cupones" #: ecommerce/static/js/views/coupon_list_view.js:80 #: ecommerce/static/js/views/course_list_view.js:25 msgid "Search..." -msgstr "" +msgstr "Búsqueda..." #: ecommerce/static/js/views/coupon_list_view.js:107 #: ecommerce/static/js/views/course_list_view.js:52 @@ -379,43 +380,43 @@ msgstr "Anterior" #. them. #: ecommerce/static/js/views/coupon_list_view.js:112 msgid "Displaying _START_ to _END_ of _TOTAL_ coupons" -msgstr "" +msgstr "Mostrando del _START_ al _END_ de _TOTAL_ cupones" #. Translators: _MAX_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/coupon_list_view.js:115 msgid "(filtered from _MAX_ total coupons)" -msgstr "" +msgstr "(filtrado de _MAX_ cupones totales)" #. Translators: _MENU_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/coupon_list_view.js:118 msgid "Display _MENU_ coupons" -msgstr "" +msgstr "Mostrar _MENU_ cupones" #: ecommerce/static/js/views/course_form_view.js:55 msgid "Free (Audit)" -msgstr "" +msgstr "Gratis (Auditoria)" #: ecommerce/static/js/views/course_form_view.js:56 msgid "Free audit track. No certificate." -msgstr "" +msgstr "Pista de auditoría gratuita. Sin certificado." #: ecommerce/static/js/views/course_form_view.js:60 msgid "Verified and Audit" -msgstr "" +msgstr "Verificado y auditado" #: ecommerce/static/js/views/course_form_view.js:61 #: ecommerce/static/js/views/course_form_view.js:67 msgid "" "Paid certificate track with initial verification and Verified Certificate." -msgstr "" +msgstr "Seguimiento de certificado pagado con verificación inicial y certificado verificado." #: ecommerce/static/js/views/course_form_view.js:62 msgid "Also includes the free audit track." -msgstr "" +msgstr "También incluye la pista de auditoría gratuita." #: ecommerce/static/js/views/course_form_view.js:66 msgid "Verified Only" -msgstr "" +msgstr "Solo verificado" #: ecommerce/static/js/views/course_form_view.js:71 msgid "Professional Education" @@ -425,29 +426,29 @@ msgstr "Educación profesional" msgid "" "Paid certificate track with initial verification and Professional Education " "Certificate" -msgstr "" +msgstr "Pista de certificado de pago con Verificación y con Certificado de Educación Profesional." #: ecommerce/static/js/views/course_form_view.js:78 msgid "" "Paid certificate track with initial verification and Verified Certificate, " "and option to purchase credit" -msgstr "" +msgstr "Pista certificado de pago con la verificación inicial y Certificado Verificado, y opción de compra de crédito" #. Translators: _START_, _END_, and _TOTAL_ are placeholders. Do NOT translate #. them. #: ecommerce/static/js/views/course_list_view.js:57 msgid "Displaying _START_ to _END_ of _TOTAL_ courses" -msgstr "" +msgstr "Mostrando _START_al_END_del _TOTAL_ de cursos" #. Translators: _MAX_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/course_list_view.js:60 msgid "(filtered from _MAX_ total courses)" -msgstr "" +msgstr "(filtrado desde _MAX_ cursos totales)" #. Translators: _MENU_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/course_list_view.js:63 msgid "Display _MENU_ courses" -msgstr "" +msgstr "Mostrando _MENU_ cursos" #: ecommerce/static/js/views/course_list_view.js:69 msgid "Course" @@ -459,41 +460,41 @@ msgstr "Última edición" #: ecommerce/static/js/views/dynamic_catalog_view.js:74 msgid "Seat title" -msgstr "" +msgstr "Título del asiento" #: ecommerce/static/js/views/dynamic_catalog_view.js:78 msgid "Seat type" -msgstr "" +msgstr "Tipo de asiento" #: ecommerce/static/js/views/enterprise_coupon_detail_view.js:28 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:42 msgid "Can be used multiple times by one customer" -msgstr "" +msgstr "Puede ser utilizado varias veces por un cliente" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" -msgstr "" +msgstr "Crear y agregar más" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:38 msgid "Status" -msgstr "" +msgstr "Estado" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:50 msgid "Enterprise Customer" -msgstr "" +msgstr "Cliente empresarial" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:56 msgid "Enterprise Customer Catalog" -msgstr "" +msgstr "Catálogo de clientes empresariales" #: ecommerce/static/js/views/form_view.js:71 msgid "A course with the specified ID already exists." -msgstr "" +msgstr "Ya existe un curso con el ID especificado." #: ecommerce/static/js/views/form_view.js:81 #: ecommerce/static/js/views/form_view.js:174 msgid "Error!" -msgstr "" +msgstr "¡Error!" #: ecommerce/static/js/views/form_view.js:127 msgid "Saving..." @@ -505,50 +506,50 @@ msgstr "Por favor, completa todos los campos obligatorios." #: ecommerce/static/js/views/form_view.js:161 msgid "An error occurred while saving the data." -msgstr "" +msgstr "Se ha producido un error mientras se guardaban los datos." #: ecommerce/static/js/views/offer_view.js:198 msgid "Ellipsis" -msgstr "" +msgstr "Elipsis" #: ecommerce/static/js/views/offer_view.js:205 msgid "Load the records for page " -msgstr "" +msgstr "Cargar los registros para la página" #: ecommerce/static/js/views/offer_view.js:212 msgid "Load the records for the next page" -msgstr "" +msgstr "Cargar los registros para la página siguiente" #: ecommerce/static/js/views/offer_view.js:220 msgid "Load the records for the previous page" -msgstr "" +msgstr "Cargar los registros de la página anterior" #: ecommerce/static/js/views/provider_selection_view.js:33 msgid "Select" -msgstr "" +msgstr "Seleccionar" #: ecommerce/static/js/views/provider_selection_view.js:34 msgid "Selected" -msgstr "" +msgstr "Seleccionado" #: ecommerce/static/vendor-extensions/oscar/js/order_actions.js:21 msgid "Order %(order_number)s has been fulfilled." -msgstr "" +msgstr "Se ha cumplido el pedido %(order_number)s." #: ecommerce/static/vendor-extensions/oscar/js/order_actions.js:27 msgid "Failed to fulfill order %(order_number)s: %(error)s" -msgstr "" +msgstr "No se pudo completar el pedido %(order_number)s: %(error)s" #: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:24 msgid "Refund #%(refund_id)s has been processed." -msgstr "" +msgstr "Se ha procesado el reembolso n.º %(refund_id)s." #: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:33 msgid "Error" -msgstr "" +msgstr "Error" #: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:36 msgid "" "Failed to process refund #%(refund_id)s: %(error)s. Please try again, or " "contact the E-Commerce Development Team." -msgstr "" +msgstr "No se pudo procesar el reembolso #%(refund_id)s: %(error)s. Vuelva a intentarlo o póngase en contacto con el equipo de desarrollo de comercio electrónico." diff --git a/ecommerce/conf/locale/es_MX/LC_MESSAGES/django.mo b/ecommerce/conf/locale/es_MX/LC_MESSAGES/django.mo index 66bd39fba5a..bae8bfca24e 100644 Binary files a/ecommerce/conf/locale/es_MX/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/es_MX/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/es_MX/LC_MESSAGES/django.po b/ecommerce/conf/locale/es_MX/LC_MESSAGES/django.po index 94a8a2ccb9b..3d0f3a368d1 100644 --- a/ecommerce/conf/locale/es_MX/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/es_MX/LC_MESSAGES/django.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Eduardo Javier Maldonado Acevedo , 2015\n" -"Language-Team: Spanish (Mexico) (http://www.transifex.com/open-edx/edx-platform/language/es_MX/)\n" +"Language-Team: Spanish (Mexico) (http://app.transifex.com/open-edx/edx-platform/language/es_MX/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,332 +47,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -382,43 +382,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -480,150 +480,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -793,41 +803,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -835,39 +845,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -905,84 +916,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -999,7 +1010,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1008,44 +1019,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1111,6 +1122,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1143,23 +1168,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1170,35 +1195,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1248,7 +1273,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1257,14 +1282,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1295,7 +1336,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1377,11 +1418,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1426,7 +1467,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1481,7 +1522,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1817,7 +1858,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1830,38 +1871,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1873,11 +1914,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1888,25 +1929,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2023,89 +2064,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2115,11 +2165,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/es_MX/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/es_MX/LC_MESSAGES/djangojs.mo index a2de184d84d..439b2c992b5 100644 Binary files a/ecommerce/conf/locale/es_MX/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/es_MX/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/es_MX/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/es_MX/LC_MESSAGES/djangojs.po index b776a342346..d19f34a7ae6 100644 --- a/ecommerce/conf/locale/es_MX/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/es_MX/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Mecabotware , 2015\n" -"Language-Team: Spanish (Mexico) (http://www.transifex.com/open-edx/edx-platform/language/es_MX/)\n" +"Language-Team: Spanish (Mexico) (http://app.transifex.com/open-edx/edx-platform/language/es_MX/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/es_PE/LC_MESSAGES/django.mo b/ecommerce/conf/locale/es_PE/LC_MESSAGES/django.mo index edf2e432917..9012149e9fa 100644 Binary files a/ecommerce/conf/locale/es_PE/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/es_PE/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/es_PE/LC_MESSAGES/django.po b/ecommerce/conf/locale/es_PE/LC_MESSAGES/django.po index cffecdc89f3..21f619beaef 100644 --- a/ecommerce/conf/locale/es_PE/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/es_PE/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Spanish (Peru) (http://www.transifex.com/open-edx/edx-platform/language/es_PE/)\n" +"Language-Team: Spanish (Peru) (http://app.transifex.com/open-edx/edx-platform/language/es_PE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/es_PE/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/es_PE/LC_MESSAGES/djangojs.mo index 5746a5c01da..e8a35a52f2c 100644 Binary files a/ecommerce/conf/locale/es_PE/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/es_PE/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/es_PE/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/es_PE/LC_MESSAGES/djangojs.po index fcb560549cf..576f0dd3efd 100644 --- a/ecommerce/conf/locale/es_PE/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/es_PE/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Spanish (Peru) (http://www.transifex.com/open-edx/edx-platform/language/es_PE/)\n" +"Language-Team: Spanish (Peru) (http://app.transifex.com/open-edx/edx-platform/language/es_PE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/es_US/LC_MESSAGES/django.mo b/ecommerce/conf/locale/es_US/LC_MESSAGES/django.mo index 81c16c7d148..f4279d53c6f 100644 Binary files a/ecommerce/conf/locale/es_US/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/es_US/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/es_US/LC_MESSAGES/django.po b/ecommerce/conf/locale/es_US/LC_MESSAGES/django.po index 0f0fa8f8ec2..230c8ee1d8f 100644 --- a/ecommerce/conf/locale/es_US/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/es_US/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Spanish (United States) (http://www.transifex.com/open-edx/edx-platform/language/es_US/)\n" +"Language-Team: Spanish (United States) (http://app.transifex.com/open-edx/edx-platform/language/es_US/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/es_US/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/es_US/LC_MESSAGES/djangojs.mo index 58319ccbff9..549068d269a 100644 Binary files a/ecommerce/conf/locale/es_US/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/es_US/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/es_US/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/es_US/LC_MESSAGES/djangojs.po index fcda92c1c4f..02ef34f7b7e 100644 --- a/ecommerce/conf/locale/es_US/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/es_US/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Spanish (United States) (http://www.transifex.com/open-edx/edx-platform/language/es_US/)\n" +"Language-Team: Spanish (United States) (http://app.transifex.com/open-edx/edx-platform/language/es_US/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/et_EE/LC_MESSAGES/django.mo b/ecommerce/conf/locale/et_EE/LC_MESSAGES/django.mo index 077e0fb56e1..495453b7c7f 100644 Binary files a/ecommerce/conf/locale/et_EE/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/et_EE/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/et_EE/LC_MESSAGES/django.po b/ecommerce/conf/locale/et_EE/LC_MESSAGES/django.po index 77ec8108d2c..36977368221 100644 --- a/ecommerce/conf/locale/et_EE/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/et_EE/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Estonian (Estonia) (http://www.transifex.com/open-edx/edx-platform/language/et_EE/)\n" +"Language-Team: Estonian (Estonia) (http://app.transifex.com/open-edx/edx-platform/language/et_EE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/et_EE/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/et_EE/LC_MESSAGES/djangojs.mo index 51e473b40a3..23cbb2ec809 100644 Binary files a/ecommerce/conf/locale/et_EE/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/et_EE/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/et_EE/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/et_EE/LC_MESSAGES/djangojs.po index e0e2867345f..080989e7199 100644 --- a/ecommerce/conf/locale/et_EE/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/et_EE/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Estonian (Estonia) (http://www.transifex.com/open-edx/edx-platform/language/et_EE/)\n" +"Language-Team: Estonian (Estonia) (http://app.transifex.com/open-edx/edx-platform/language/et_EE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/eu_ES/LC_MESSAGES/django.mo b/ecommerce/conf/locale/eu_ES/LC_MESSAGES/django.mo index 4b777534106..3238a81a90f 100644 Binary files a/ecommerce/conf/locale/eu_ES/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/eu_ES/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/eu_ES/LC_MESSAGES/django.po b/ecommerce/conf/locale/eu_ES/LC_MESSAGES/django.po index f275505e75c..11991971637 100644 --- a/ecommerce/conf/locale/eu_ES/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/eu_ES/LC_MESSAGES/django.po @@ -16,10 +16,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Abel Camacho , 2019-2020\n" -"Language-Team: Basque (Spain) (http://www.transifex.com/open-edx/edx-platform/language/eu_ES/)\n" +"Language-Team: Basque (Spain) (http://app.transifex.com/open-edx/edx-platform/language/eu_ES/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,332 +48,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "OAuth ezarpenak" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Gaitu matrikulazio-kodeak" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Gaitu matrikulazio-kodeak sortzea." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Kontuaren aktibazioa beharrezkoa da" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Izen osoa" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Izena" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Ongi etorri Open edX-era!" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "Gunea" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -383,43 +383,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Entzulea" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Kreditua" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Portaera" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Profesionala" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Egiaztatuta" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -481,150 +481,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Hasiera-data" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -794,41 +804,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Produktuek prezioa izan behar dute." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -836,39 +846,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Matrikulazio-kodea" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Deskontu-kodea" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -906,84 +917,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1000,7 +1011,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1009,44 +1020,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1112,6 +1123,20 @@ msgstr "Egoera" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1144,23 +1169,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1171,35 +1196,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1249,7 +1274,7 @@ msgstr "" msgid "Partner" msgstr "Partaidea" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Partaideak" @@ -1258,14 +1283,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Aurkitu" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1296,7 +1337,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1378,11 +1419,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1427,7 +1468,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1482,7 +1523,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1818,7 +1859,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1831,38 +1872,38 @@ msgstr "" msgid "Dashboard" msgstr "Aginte-panela" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Katalogoa" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Produktuak" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Produktu-motak" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Kategoriak" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1874,11 +1915,11 @@ msgstr "" msgid "Orders" msgstr "Eskaerak" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Estatistikak" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1889,25 +1930,25 @@ msgstr "Estatistikak" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Bezeroak" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Txostenak" @@ -2024,89 +2065,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "Eskaera-zenbakia:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "Eskaera-data:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "Eskaeraren informazioa" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Kantitatea:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "Subtotala" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2116,11 +2166,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "Joan aginte-panelera" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "Bilatu ikastaro gehiago" diff --git a/ecommerce/conf/locale/eu_ES/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/eu_ES/LC_MESSAGES/djangojs.mo index 86b3ae5d8a0..099ca2fdc9f 100644 Binary files a/ecommerce/conf/locale/eu_ES/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/eu_ES/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/eu_ES/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/eu_ES/LC_MESSAGES/djangojs.po index 9c2a12b69b7..20f800238b7 100644 --- a/ecommerce/conf/locale/eu_ES/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/eu_ES/LC_MESSAGES/djangojs.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Abel Camacho , 2017,2019\n" -"Language-Team: Basque (Spain) (http://www.transifex.com/open-edx/edx-platform/language/eu_ES/)\n" +"Language-Team: Basque (Spain) (http://app.transifex.com/open-edx/edx-platform/language/eu_ES/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,11 +317,11 @@ msgstr "Matrikulazio-kodea" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Gorde aldaketak" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Sortu kupoia" @@ -463,7 +463,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/fa/LC_MESSAGES/django.mo b/ecommerce/conf/locale/fa/LC_MESSAGES/django.mo index b3584adba32..d2ddc8145b0 100644 Binary files a/ecommerce/conf/locale/fa/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/fa/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/fa/LC_MESSAGES/django.po b/ecommerce/conf/locale/fa/LC_MESSAGES/django.po index 94a62e81828..cd1ba76f9da 100644 --- a/ecommerce/conf/locale/fa/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/fa/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Persian (http://www.transifex.com/open-edx/edx-platform/language/fa/)\n" +"Language-Team: Persian (http://app.transifex.com/open-edx/edx-platform/language/fa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/fa/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/fa/LC_MESSAGES/djangojs.mo index 26b4bbe0bb4..71c359d7f7d 100644 Binary files a/ecommerce/conf/locale/fa/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/fa/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/fa/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/fa/LC_MESSAGES/djangojs.po index 5293a6e1c37..985819ae760 100644 --- a/ecommerce/conf/locale/fa/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/fa/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Persian (http://www.transifex.com/open-edx/edx-platform/language/fa/)\n" +"Language-Team: Persian (http://app.transifex.com/open-edx/edx-platform/language/fa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/fa_IR/LC_MESSAGES/django.mo b/ecommerce/conf/locale/fa_IR/LC_MESSAGES/django.mo index db080761561..f31612ef409 100644 Binary files a/ecommerce/conf/locale/fa_IR/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/fa_IR/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/fa_IR/LC_MESSAGES/django.po b/ecommerce/conf/locale/fa_IR/LC_MESSAGES/django.po index 82868bd9b25..40eb8714300 100644 --- a/ecommerce/conf/locale/fa_IR/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/fa_IR/LC_MESSAGES/django.po @@ -12,6 +12,7 @@ # Leila Nafar , 2021 # MohammadSadegh Mahmoudpour , 2016 # mr ash , 2017 +# SeyedMahdi Saeid , 2022 # Siavash Kavousi , 2016 # Somaye Joolaee, 2022 # zar24 , 2015 @@ -19,10 +20,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-09-04 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Somaye Joolaee, 2022\n" -"Language-Team: Persian (Iran) (http://www.transifex.com/open-edx/edx-platform/language/fa_IR/)\n" +"Last-Translator: SeyedMahdi Saeid , 2022\n" +"Language-Team: Persian (Iran) (http://app.transifex.com/open-edx/edx-platform/language/fa_IR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,327 +50,327 @@ msgid "" "User administration has been disabled due to the load on the database. This " "functionality can be restored by activating the {switch_name} Waffle switch." " Be careful when re-activating this switch!" -msgstr "" +msgstr "مدیریت کاربر به‌دلیل بارگیری در پایگاه داده غیرفعال شده است. این عملکرد را می‌توان با فعالسازی سوئیچ وافل {switch_name} بازیابی کرد. هنگام فعالسازی مجدد این سوئیچ مراقب باشید!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" -msgstr "" +msgstr "نشانی اینترنتی پایه سامانه آموزش مجازی برای سایت/میکروسایت سفارشی" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "نشانی اینترنتی ریشه این وبگاه آموزشی مجازی: (مثلا: https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "مسیر به طرح سفارشی وبگاه" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "پردازشگرهای پرداخت" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "فهرست نام‌های پردازنده تفکیک‌شده با کاما: «cybersource,paypal»" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" -msgstr "" +msgstr "پردازشگر پرداخت سمت مشتری" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" -msgstr "" +msgstr "پردازنده‌ای که برای پرداخت‌های سمت مشتری استفاده می‌شود" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "تنظیمات OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "رشته JSON شامل تنظیمات پشت صحنه OAuth." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "کلید بخش" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "بخش نوشتن/کلید API." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "از نشانی رایانامه" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "نشانی‌هایی که از آن رایانامه‌ها ارسال می‌شود." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "فعالسازی کدهای ثبت‌نام" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "ایجاد کدهای ثبت‌نام را فعال کنید." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "نشانی رایانامه پشتیبانی پرداخت" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "برای مشکلات پشتیبانی پرداخت با نشانی زیر تماس بگیرید." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" -msgstr "" +msgstr "نشانی اینترنتی پشتیبانی پرداخت" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." -msgstr "" +msgstr "نشانی اینترنتی برای مشکلات پشتیبانی پرداخت." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" -msgstr "" +msgstr "نام کوکی UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." -msgstr "" +msgstr "نام کوکی که داده‌های UTM را ذخیره می‌کند." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" -msgstr "" +msgstr "نام کوکی وابسته" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." -msgstr "" +msgstr "نام کوکی که داده‌های وابسته را ذخیره می‌کند." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" -msgstr "" +msgstr "ارسال اعلان رایانامه بازپرداخت" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" -msgstr "" +msgstr "بررسی SDN را فعال کنید" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." -msgstr "" +msgstr "بررسی SDN را هنگام تسویه حساب فعال کنید." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" -msgstr "" +msgstr "[Deprecated] US Treasury SDN API URL" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" -msgstr "" +msgstr "[Deprecated] US Treasury SDN API key" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" -msgstr "" +msgstr "فهرست‌های SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." -msgstr "" +msgstr "فهرستی از فهرست‌های OFAC وزارت خزانه‌داری که با کاما تفکیک شده‌اند، برای بررسی ارائه می‌شود." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" -msgstr "" +msgstr "نیاز به فعالسازی حساب کاربری" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." -msgstr "" +msgstr "از کاربران بخواهید پیش از اینکه به آن‌ها اجازه استفاده از کوپن را بدهند حساب کاربری خود را فعال کنند." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" -msgstr "" +msgstr "نشانی اینترنتی منبع را بهینه کنید" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." -msgstr "" +msgstr "این اسکریپت در هر صفحه بارگذاری می‌شود." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" -msgstr "" +msgstr "دامنه کوکی پایه" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." -msgstr "" +msgstr "دامنه کوکی پایه که برای اشتراک‌گذاری کوکی‌ها در بین سرویس‌ها استفاده می‌شود." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" -msgstr "" +msgstr "فعالسازی کنترل محرومیت" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." -msgstr "" +msgstr "فعالسازی کنترل محرومیت در هنگام وارسی." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" -msgstr "" +msgstr "Discovery API URL" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" -msgstr "" +msgstr "Apple Pay را فعال کنید" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" -msgstr "" +msgstr "پیشنهاد جزئی برنامه را فعال کنید" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" -msgstr "" +msgstr "استفاده از پیشنهادهای برنامه را برای دوره‌های آموزشی ثبت‌نشده یا تأییدنشده باقی‌مانده فعال کنید" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" -msgstr "" +msgstr "کلید مخفی پرتال Hubspot" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" -msgstr "" +msgstr "کلید مخفی برای احراز هویت پرتال Hubspot" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" -msgstr "" +msgstr "Microfrontend را برای صفحه سبد فعال کنید" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" -msgstr "" +msgstr "از پیاده‌سازی microfrontend صفحه سبد به جای قالب سمت سرور استفاده کنید" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" -msgstr "" +msgstr "Payment Microfrontend URL" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" -msgstr "" +msgstr "نشانی اینترنتی برای Microfrontend پرداخت (در صورتی استفاده می‌شود که Enable Microfrontend for Basket Page تنظیم شده باشد)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "نام خانوادگی" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "نام" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "نام و نام خانوادگی" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" -msgstr "" +msgstr "شناسه کاربر سامانه آموزشی مجازی" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "نام" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" -msgstr "" +msgstr "EnterpriseCustomer UUID" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." -msgstr "" +msgstr "UUID برای یک EnterpriseCustomer از خدمت سازمانی." -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." -msgstr "" +msgstr "کوپن وجود ندارد." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "این کوپن هنوز معتبر نیست." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "این کد کوپن منقضی شده است." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "محصول [{product}]  برای خرید در دسترس نیست." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "این کد کوپن دیگر در دسترس نیست." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "این کد کوپن معتبر نیست." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "کوپن برای سبد فعلی شما قابل استفاده نیست." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" -msgstr "" +msgstr "به ادکس خوش آمدید" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." -msgstr "" +msgstr "لطفاً از دوره‎‌های آموزشی منتخب توسط سازمان خود برای شروع آموزش انتخاب کنید." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "کد ارائه نشده است." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." -msgstr "" +msgstr "SKU در دسترس نیست." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "این محصول وجود ندارد." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." -msgstr "" +msgstr "شما واجد شرایط استفاده از این کوپن نیستید." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." -msgstr "" +msgstr "مشتری سازمانی منطبق با این کوپن پیدا نشد." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." -msgstr "" +msgstr "این کوپن برای خرید برنامه معتبر نیست. سعی کنید از این مورد در یک دوره آموزشی فردی در برنامه استفاده کنید. اگر به راهنمایی نیاز دارید، با پشتیبانی ادکس تماس بگیرید." -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." -msgstr "" +msgstr "کد رضایت اشتراک‌گذاری داده نامعتبر ارائه شده است." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." -msgstr "" +msgstr "شما قبلاً جایگاه {course} را خریداری کرده‌اید." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." -msgstr "" +msgstr "تخفیفی اعمال شده است، با احترام از {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." -msgstr "" +msgstr "این کد کوپن برای این دوره آموزشی معتبر نیست. یک دوره آموزشی متفاوت را امتحان کنید." #: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 @@ -386,43 +387,43 @@ msgstr "آخرین تاریخ قابل قبول برای تایید این مح msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "داده‌های تجاری {course_id} در سامانه آموزش مجازی منتشر نشد." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "رسیدگی" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" -msgstr "" +msgstr "اعتبار" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" -msgstr "" +msgstr "افتخارات" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "حرفه‌ای" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "تایید شده" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "آموزش اجرایی" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "آموزش اجرایی با حقوق" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "آموزش اجرایی بدون حقوق" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "Bootcamp پرداخت شده" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "Bootcamp پرداخت نشده" @@ -439,7 +440,7 @@ msgid "" "currently enrolled in the course, please try again after all grading is " "complete. If you need additional assistance, please contact the {site_name} " "Support Team." -msgstr "" +msgstr "در حال حاضر اعتبار برای \"{course_name}\" در دسترس نیست. اگر در دوره آموزشی ثبت‌نام کرده‌اید، لطفاً پس از اتمام نمره‌دهی، دوباره تلاش کنید. اگر به راهنمایی بیشتری نیاز دارید، لطفاً با تیم پشتیبانی {site_name} تماس بگیرید." #: ecommerce/credit/views.py:75 msgid "" @@ -450,12 +451,12 @@ msgstr "خطایی رخ داده است. ما نتوانستیم تأیید کن #: ecommerce/enterprise/benefits.py:24 #, python-format msgid "%d%% enterprise discount" -msgstr "" +msgstr "%d%% تخفیف سازمانی" #: ecommerce/enterprise/benefits.py:36 #, python-brace-format msgid "{value} fixed-price enterprise discount" -msgstr "" +msgstr "{value} تخفیف شرکتی با قیمت ثابت" #: ecommerce/enterprise/benefits.py:45 #: ecommerce/extensions/payment/models.py:86 ecommerce/invoice/models.py:25 @@ -467,7 +468,7 @@ msgstr "درصد" #: ecommerce/extensions/payment/models.py:87 #: ecommerce/programs/constants.py:16 msgid "Absolute" -msgstr "" +msgstr "کامل" #: ecommerce/enterprise/conditions.py:216 #, python-brace-format @@ -475,184 +476,194 @@ msgid "" "This coupon has been made available through {new_enterprise}. To redeem this" " coupon, you must first logout. When you log back in, please select " "{new_enterprise} as your enterprise and try again." -msgstr "" +msgstr "این کوپن از طریق {new_enterprise} در دسترس قرار گرفته است. برای استفاده از این کوپن، ابتدا باید از سامانه خارج شوید. وقتی دوباره وارد سامانه شدید، لطفاً {new_enterprise} را به‌عنوان شرکت خود انتخاب کرده و دوباره امتحان کنید." #: ecommerce/enterprise/conditions.py:370 msgid "" "This code is not valid with your email. Please login with the correct email " "assigned to the code or contact your Learning Manager for additional " "questions." -msgstr "" +msgstr "این کد همراه با رایانامه شما معتبر نیست. لطفاً با نشانی رایانامه صحیح مختص کد وارد شوید یا برای سؤالات بیشتر با مدیر آموزش خود تماس بگیرید." -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" -msgstr "" +msgstr "UUID مشتری سازمانی" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" -msgstr "" +msgstr "UUID فهرست مشتری سازمانی" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" -msgstr "" +msgstr "نوع تخفیف" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" -msgstr "" +msgstr "مقدار تخفیف" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" -msgstr "" +msgstr "نوع تخفیف قرارداد" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" -msgstr "" +msgstr "تخفیف قرارداد" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" -msgstr "" +msgstr "مبلغ فاکتور پیش‌پرداخت" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" +msgstr "شناسه فرصت Salesforce " + +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "نشانی‌های رایانامه" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" -msgstr "" +msgstr "نشانی‌های رایانامه تفکیک‌شده با کاما که هشدارهای استفاده از پیشنهاد را دریافت خواهند کرد" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" -msgstr "" +msgstr "تعداد رایانامه‌های استفاده از پیشنهاد" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "حداکثر تعداد ثبت‌نام‌هایی که می‌توانند از این پیشنهاد استفاده کنند." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." -msgstr "" +msgstr "حداکثر مبلغ دلاری که می‌توان با این پیشنهاد بازخرید کرد." -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." -msgstr "" +msgstr "حداکثر تعداد ثبت‌نام توسط کاربری که می‌تواند از این پیشنهاد استفاده کند." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." -msgstr "" +msgstr "حداکثر مقدار دلاری که کاربر می‌تواند با استفاده از این پیشنهاد بازخرید کند." -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" -msgstr "" +msgstr "تاریخ آغاز" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" -msgstr "" +msgstr "تاریخ پایان" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "محدودیت ثبت‌نام" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" -msgstr "" +msgstr "محدودیت رزرو" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" -msgstr "" +msgstr "محدودیت ثبت‌نام به ازای هر کاربر" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" -msgstr "" +msgstr "محدودیت رزرو برای هر کاربر" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "اطمینان حاصل کنید که مقدار جدید، بزرگتر یا مساوی با مقدار مصرف‌شده ({offer_enrollments}) باشد." -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "شناسه فرصت Salesforce باید 18 نویسه الفبایی عددی داشته باشد و با 006 شروع شود." -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "اطمینان حاصل کنید که این مقدار بزرگتر یا مساوی 0 باشد." -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." -msgstr "" +msgstr "مطمئن شوید که مقدار جدید باید بزرگتر یا مساوی با مقدار مصرف‌شده ({consumed_discount:.2f}) باشد." -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." -msgstr "" +msgstr "نشانی رایانامه {email} معتبر نیست." -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." -msgstr "" +msgstr "پیشنهادی از پیش برای این ترکیب شرکت و فهرست وجود دارد." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." -msgstr "" +msgstr "درصد تخفیف نمی‌تواند بیشتر از 100٪ باشد." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." -msgstr "" +msgstr "هنگام تعیین تاریخ پایان باید تاریخ آغاز مشخص شود." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." -msgstr "" +msgstr "تاریخ آغاز باید پیش از تاریخ پایان باشد." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." -msgstr "" +msgstr "بیش از 2 رقم بعد از اعشار برای مقدار مطلق مجاز نیست." -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." -msgstr "" +msgstr "این قسمت زمانی الزامی است که نوع تخفیف قرارداد صحیح باشد." -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." -msgstr "" +msgstr "تخفیف نوع {} ارائه‌شده توسط {} برای {}." #: ecommerce/enterprise/templates/enterprise/enterprise_coupon_app.html:5 msgid "Enterprise Coupon Codes" -msgstr "" +msgstr "کد کوپن‌های سازمانی" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:9 #, python-format msgid "Edit Enterprise Offer: %(enterprise_customer_name)s" -msgstr "" +msgstr "ویرایش پیشنهاد سازمانی: %(enterprise_customer_name)s" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:14 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:47 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:60 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:20 msgid "Create Enterprise Offer" -msgstr "" +msgstr "ساخت پیشنهاد سازمانی" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:30 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:6 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:17 #: ecommerce/templates/edx/partials/_administration_menu.html:14 msgid "Enterprise Offers" -msgstr "" +msgstr "پیشنهادهای سازمانی" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:34 #: ecommerce/programs/templates/programs/programoffer_form.html:34 @@ -673,16 +684,16 @@ msgstr "ویرایش" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:36 #: ecommerce/programs/templates/programs/programoffer_form.html:36 msgid "Create" -msgstr "" +msgstr "ایجاد" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:45 msgid "Edit Enterprise Offer" -msgstr "" +msgstr "ویرایش پیشنهاد سازمانی" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:58 #: ecommerce/programs/templates/programs/programoffer_form.html:58 msgid "Save Changes" -msgstr "" +msgstr "ذخیرۀ تغییرات" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:62 #: ecommerce/programs/templates/programs/programoffer_form.html:62 @@ -697,15 +708,15 @@ msgid "" "\n" " %(platform_name)s Enterprise Offer Administration Tool\n" " " -msgstr "" +msgstr "\n %(platform_name)sابزار مدیریت پیشنهاد سازمانی" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:26 msgid "Current enterprise offers" -msgstr "" +msgstr "پیشنهادهای سازمانی فعلی" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:29 msgid "Enterprise Customer Name" -msgstr "" +msgstr "نام مشتری سازمانی" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:32 #: ecommerce/programs/templates/programs/programoffer_list.html:31 @@ -717,17 +728,17 @@ msgstr "نوع" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:33 #: ecommerce/programs/templates/programs/programoffer_list.html:32 msgid "Value" -msgstr "" +msgstr "مقدار" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:34 #: ecommerce/programs/templates/programs/programoffer_list.html:33 msgid "Start" -msgstr "" +msgstr "آغاز" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:35 #: ecommerce/programs/templates/programs/programoffer_list.html:34 msgid "End" -msgstr "" +msgstr "پایان" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:64 #, python-format @@ -735,44 +746,44 @@ msgid "" "\n" " %(platform_name)s Enterprise Offer Administration Tool\n" " " -msgstr "" +msgstr "\nمایلید درباره اعتبار %(platform_name)s اطلاعات بیشتری داشته باشید؟" #: ecommerce/enterprise/utils.py:239 #, python-brace-format msgid "SKU {sku} does not exist." -msgstr "" +msgstr "SKU {sku} وجود ندارد." #: ecommerce/enterprise/utils.py:248 #, python-brace-format msgid "There is no Enterprise Customer associated with SKU {sku}." -msgstr "" +msgstr "هیچ مشتری سازمانی مرتبط با SKU {sku} وجود ندارد." #: ecommerce/enterprise/utils.py:256 #, python-brace-format msgid "" "If you have concerns about sharing your data, please contact your " "administrator at {enterprise}." -msgstr "" +msgstr "اگر درباره اشتراک گذاری داده‌های خود نگرانی دارید، لطفاً با مدیر خود در {enterprise} تماس بگیرید." #: ecommerce/enterprise/utils.py:259 #, python-brace-format msgid "" "If you have concerns about sharing your data, please contact your " "administrator at {enterprise} at {contact_info}." -msgstr "" +msgstr "اگر درباره اشتراک‌گذاری داده‌های خود نگرانی دارید، لطفاً با مدیر خود در {enterprise} در {contact_info} تماس بگیرید." #: ecommerce/enterprise/utils.py:265 #, python-brace-format msgid "Enrollment in {course_name} was not complete." -msgstr "" +msgstr "ثبت‌نام در {course_name} کامل نشد." #: ecommerce/enterprise/views.py:39 msgid "Enterprise offer updated!" -msgstr "" +msgstr "پیشنهاد سازمانی روزآمد شد!" #: ecommerce/enterprise/views.py:62 msgid "Enterprise offer created!" -msgstr "" +msgstr "پیشنهاد سازمانی ساخته شد!" #: ecommerce/extensions/api/exceptions.py:9 msgid "You can't check out with an empty basket." @@ -795,43 +806,43 @@ msgstr "یکی از محصولات مورد درخواست شما وجود ند #: ecommerce/extensions/api/exceptions.py:21 msgid "" "We couldn't find enough information about you to perform the calculation." -msgstr "" +msgstr "ما قادر به یافتن اطلاعات کافی درباره شما برای انجام این محاسبه نبودیم." -#: ecommerce/extensions/api/serializers.py:256 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" -msgstr "" +msgstr "منقضی شده" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "غیرفعال" -#: ecommerce/extensions/api/serializers.py:259 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "فعال" -#: ecommerce/extensions/api/serializers.py:693 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." -msgstr "" +msgstr "نوع گواهی برای محصولات باید تعریف شود." -#: ecommerce/extensions/api/serializers.py:696 -#: ecommerce/extensions/api/serializers.py:741 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "محصولات باید قیمت داشته باشند." -#: ecommerce/extensions/api/serializers.py:703 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." -msgstr "" +msgstr "برای ایجاد حقوق دوره آموزشی، باید یک UUID دوره آموزشی ارائه دهید." -#: ecommerce/extensions/api/serializers.py:737 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "محصولات باید مشخص کنند رمز شناسایی ضروری است." -#: ecommerce/extensions/api/serializers.py:808 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "کلاس محصول [{product_class}] درخواستی معتبر نیست." -#: ecommerce/extensions/api/serializers.py:840 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -839,56 +850,57 @@ msgid "" " been saved." msgstr "دوره آموزشی [{course_id}] در سامانه آموزش مجازی منتشر نشده است زیرا سوئیچ [publish_course_modes_to_lms]  غیرفعال است. برای ممانعت از SKUهای غیرواقعی، داده‌ها ذخیره نشده است." -#: ecommerce/extensions/api/serializers.py:1510 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "کد ثبت‌نام" -#: ecommerce/extensions/api/serializers.py:1511 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "کد تخفیف" -#: ecommerce/extensions/api/serializers.py:1978 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "شماره سفارش یا سفارش {} معتبر نیست." -#: ecommerce/extensions/api/serializers.py:2033 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" -msgstr "" +msgstr "انتساب کوپن جدید ناموفق بود. خطا: {}" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." -msgstr "" +msgstr "سفارش شما {} قابل بازپرداخت نیست زیرا کوپن \"{}\" برای بازپرداخت پشتیبانی نمی‌شود." -#: ecommerce/extensions/api/serializers.py:2082 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" -msgstr "" +msgstr "کوپن جدید برای سفارش ایجاد نشد: {}" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." -msgstr "" +msgstr "SKU ها ارائه نشده‌است." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." -msgstr "" +msgstr "محصولاتی با SKU(s) [{skus}] وجود ندارند." #: ecommerce/extensions/api/v2/views/baskets.py:467 msgid "Provide username or is_anonymous query param, but not both" -msgstr "" +msgstr "نام کاربری یا پارامتر درخواست is_anonymous را ارائه دهید، اما نه هر دو را" #: ecommerce/extensions/api/v2/views/products.py:54 #, python-brace-format msgid "Product API only supports {http_method} for {product_class} products." -msgstr "" +msgstr "Product API فقط از {http_method} برای محصولات {product_class} پشتیبانی می‌کند." #: ecommerce/extensions/api/v2/views/products.py:69 #, python-brace-format msgid "Missing or bad value for: [{name}]." -msgstr "" +msgstr "مقداری وجود ندارد یا نادرست است برای: [{name}]." #: ecommerce/extensions/basket/models.py:119 #, python-brace-format @@ -903,90 +915,90 @@ msgstr "سبدخرید" #: ecommerce/extensions/basket/models.py:144 msgid "Attribute Type" -msgstr "" +msgstr "نوع ویژگی" #: ecommerce/extensions/basket/models.py:146 msgid "Text Attribute" -msgstr "" +msgstr "متن ویژگی" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." -msgstr "" +msgstr "به‌دلیل کنترل‌های صدور، امکان اجازه دسترسی به این دوره آموزشی را نداریم." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "برای خرید ثبت‌نام برای خودتان، اینجا را کلیک کنید" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "برای خرید تعدادی صندلی در این دوره آموزشی کلیک کنید" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." -msgstr "" +msgstr "کد کوپن '{code}' منقضی شده است." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." -msgstr "" +msgstr "کدکوپن '{code}' فعال نیست." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" -msgstr "" +msgstr "کد کوپن '{code}' در دسترس نیست. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." -msgstr "" +msgstr "کد کوپن '{code}' برای این سبد خرید معتبر نیست." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." -msgstr "" +msgstr "کد کوپن '{code}' برای این سبد برای خرید گروهی معتبر نیست." -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." -msgstr "" +msgstr "کد کوپن '{code}' به سبد خرید افزوده شد." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." -msgstr "" +msgstr "سبد برای واجد شرایط کد کوپن {code} نیست." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." -msgstr "" +msgstr "کد '{code}' اعمال نشد. رضایت برای اشتراک داده الزامی دارد." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." -msgstr "" +msgstr "پس از تکمیل سفارش خود می‌توانید تاریخ دوره آموزشی را از پیشخوان خود برگزینید." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." -msgstr "" +msgstr "پس از تکمیل سفارش، به‌طور خودکار در مسیر تاییدشده دوره آموزشی ثبت‌نام خواهید شد." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." -msgstr "" +msgstr "پس از تکمیل سفارش، اعتبار دوره آموزشی خود را دریافت خواهید کرد." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." -msgstr "" +msgstr "پس از تکمیل سفارش، به‌صورت خودکار در دوره آموزشی ثبت‌نام خواهید شد." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1001,53 +1013,53 @@ msgid "" "final and not eligible for refunds.{li_end}{ul_end} {paragraph_start}You " "will receive an email at {user_email} with your enrollment code(s). " "{paragraph_end}" -msgstr "" +msgstr "{paragraph_start}با خرید، شما و سازمان‌تان با شرایط زیر موافقت می‌کنید:{paragraph_end} {ul_start} {li_start}هر کد برای یک دوره آموزشی حفاظت‌شده معتبر است و فقط یک‌بار می‌توان از آن استفاده کرد.{li_end} {li_start}شما هستید مسئول توزیع کدها برای یادگیرندگان شما در سازمان‌تان است.{li_end} {li_start}هر کد در یک‌سال از تاریخ خرید یا اگر زودتر باشد، پس از بسته‌شدن دوره آموزشی منقضی می‌شود.{li_end} {li_start}اگر دوره‌ آموزشی به‌عنوان خودخوان تعیین نشده است، باید تأیید کنید که دوره پیش از انقضا در دسترس است. {li_end} {li_start}شما نمی‌توانید کدها را به اشخاص ثالث بفروشید.{li_end} {li_start}همه فروش‌های ادکس برای کسب‌وکار نهایی هستند و واجد شرایط بازپرداخت نیستند.{li_end}{ul_end} {paragraph_start}یک نشانی رایانامه در آدرس {user_email} دریافت خواهید کرد.با کد(های) ثبت‌نام شما. {paragraph_end}" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " "you are purchasing a single code for someone else, please continue with " "checkout. However, if you are the learner {link_start}go back{link_end} to " "enroll directly.{paragraph_end}" -msgstr "" +msgstr "{strong_start}فقط برای خود خرید می‌کنید؟{strong_end}{paragraph_start}اگر یک کد واحد برای شخص دیگری خریداری می‌کنید، لطفاً به تسویه‌حساب ادامه دهید. با این حال، اگر شما یادگیرنده هستید، برای ثبت‌نام مستقیم، {link_start}برگردید{link_end}.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" -msgstr "" +msgstr "شما قبلاً این محصولات را خریداری کرده‌اید" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." -msgstr "" +msgstr "هیج محصولی برای خرید در دسترس نیست." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" -msgstr "" +msgstr "مقدار با موفقیت روزآمد شد" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." -msgstr "" +msgstr "امکان روزآمدسازی سبد شما نبود. لطفاً هر گونه خطای اعتبارسنجی را در زیر تصحیح کنید." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." -msgstr "" +msgstr "شما قبلاً کد کوپن '{code}' را به سبد خرید خود افزوده‌اید." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." -msgstr "" +msgstr "کد کوپن '{code}' وجود ندارد." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" -msgstr "" +msgstr "کوپنی با شناسه%s پیدا نشد" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." -msgstr "" +msgstr "کد کوپن '%s' از سبد شما حذف شد." #: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." @@ -1115,17 +1127,31 @@ msgstr "وضعیت" msgid "Failed to retrieve enrollment data." msgstr "بازیابی داده‌های ثبت‌نام با مشکل مواجه است." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" -msgstr "" +msgstr "روز 3" #: ecommerce/extensions/offer/constants.py:33 msgid "Day 10" -msgstr "" +msgstr "روز 10" #: ecommerce/extensions/offer/constants.py:34 msgid "Day 19" -msgstr "" +msgstr "روز 19" #: ecommerce/extensions/offer/constants.py:40 msgid "Assign" @@ -1133,11 +1159,11 @@ msgstr "تخصیص" #: ecommerce/extensions/offer/constants.py:41 msgid "Remind" -msgstr "" +msgstr "یادآوری" #: ecommerce/extensions/offer/constants.py:42 msgid "Revoke" -msgstr "" +msgstr "لغو" #: ecommerce/extensions/offer/constants.py:77 msgid "Automatic" @@ -1147,23 +1173,23 @@ msgstr "خودکار" msgid "Manual" msgstr "دستنامه" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." -msgstr "" +msgstr "شناسه فهرست دوره آموزشی از سرویس Discovery." -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." -msgstr "" +msgstr "UUID برای EnterpriseCustomerCatalog از Enterprise Service." -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" -msgstr "" +msgstr "نام مشتری سازمانی " -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" -msgstr "" +msgstr "EnterpriseCustomerCatalog UUID" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1172,39 +1198,39 @@ msgstr "" #: ecommerce/extensions/voucher/utils.py:341 ecommerce/programs/forms.py:22 #: ecommerce/programs/templates/programs/programoffer_list.html:30 msgid "Program UUID" -msgstr "" +msgstr "پیشرفت UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." -msgstr "" +msgstr "رایانامه به کاربر در حال انتظار." -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." -msgstr "" +msgstr "کد با موفقیت به کاربر اختصاص یافت." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." -msgstr "" +msgstr "کد توسط کاربر استفاده شده‌است." -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." -msgstr "" +msgstr "رایانامه به کاربر برگشت داده شد." -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." -msgstr "" +msgstr "کد برای این کاربر لغو شده است." -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." -msgstr "" +msgstr "یک نسخه قالب خاص را فعال کنید." -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." -msgstr "" +msgstr "رایانامه ارسال شد." -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" -msgstr "" +msgstr "این کاربر باید رایانامه دریافت کند" #: ecommerce/extensions/offer/utils.py:97 #, python-brace-format @@ -1214,7 +1240,7 @@ msgstr "{benefit_value}%" #: ecommerce/extensions/offer/utils.py:100 #, python-brace-format msgid "${benefit_value}" -msgstr "" +msgstr "${benefit_value}" #. Translators: "Waffle" is the name of a third-party library. It should not #. be translated @@ -1224,12 +1250,12 @@ msgid "" "Order administration has been disabled due to the load on the database. This" " functionality can be restored by activating the {switch_name} Waffle " "switch. Be careful when re-activating this switch!" -msgstr "" +msgstr "مدیریت سفارش به‌دلیل بارگیری در پایگاه داده غیرفعال شده است. این عملکرد را می‌توان با فعالسازی Waffle switch {switch_name} بازیابی کرد. هنگام فعالسازی مجدد این سوئیچ مراقب باشید!" #: ecommerce/extensions/order/benefits.py:22 #, python-format msgid "%d%% discount for manual course enrollment order" -msgstr "" +msgstr "2%d%% تخفیف برای سفارش ثبت‌نام دوره آموزشی به‌صورت دستی" #: ecommerce/extensions/order/models.py:39 #: ecommerce/extensions/payment/models.py:26 @@ -1240,7 +1266,7 @@ msgstr "پردازشگر پرداخت" msgid "" "It expect that the order numbers stuck in fulfillment error state will be" " provided in a txt file format one per line." -msgstr "" +msgstr "انتظار می‌رود که اعداد سفارشی که در حالت خطای تکمیل گیر کرده‌اند در قالب پرونده txt در هر خط ارائه شوند." #: ecommerce/extensions/partner/admin.py:28 msgid "Click 'Save and Continue Editing' to add stock records" @@ -1252,25 +1278,41 @@ msgstr "برای افزودن سوابق سهمیه روی دکمه «ذخیره msgid "Partner" msgstr "همکار" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:259 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "همکاران" #: ecommerce/extensions/payment/constants.py:8 msgid "American Express" -msgstr "" +msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 -msgid "Discover" +msgid "Diners" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:18 +msgid "Discover" +msgstr "Discover" + +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "JCB" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" -msgstr "" +msgstr "MasterCard" + +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "UnionPay" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "ناشناخته" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" -msgstr "" +msgstr "Visa" #: ecommerce/extensions/payment/exceptions.py:8 msgid "We don't support the payment option you selected." @@ -1278,7 +1320,7 @@ msgstr "از شیوه پرداختی شما پشتیبانی نمی‌شود." #: ecommerce/extensions/payment/forms.py:31 msgid "Choose country" -msgstr "" +msgstr "انتخاب شهر" #. Translators: This is a string added next to the name of the required #. fields on the payment form. For example, the first name field is @@ -1286,66 +1328,66 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:105 #, python-brace-format msgid "{label} (required)" -msgstr "" +msgstr "{label} (الزامی)" #: ecommerce/extensions/payment/forms.py:111 msgid "Organization (required)" -msgstr "" +msgstr "سازمان (ضروری)" #: ecommerce/extensions/payment/forms.py:124 msgid "" "I am purchasing on behalf of my employer or other professional organization" -msgstr "" +msgstr "من از طرف کارفرما یا سازمان حرفه‌ای دیگری خرید می‌کنم" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." -msgstr "" +msgstr "مشکلی در بازیابی سبد خرید شما است. صفحه را تازه کرده تا دوباره امتحان کنید." #: ecommerce/extensions/payment/forms.py:144 msgid "First Name (required)" -msgstr "" +msgstr "نام (ضروری)" #: ecommerce/extensions/payment/forms.py:145 msgid "Last Name (required)" -msgstr "" +msgstr "نام خانوادگی (ضروری)" #: ecommerce/extensions/payment/forms.py:146 msgid "Address (required)" -msgstr "" +msgstr "نشانی (ضروری)" #: ecommerce/extensions/payment/forms.py:147 msgid "Suite/Apartment Number" -msgstr "" +msgstr "پلاک خانه/آپارتمان " #: ecommerce/extensions/payment/forms.py:148 msgid "City (required)" -msgstr "" +msgstr "شهر (ضروری)" #: ecommerce/extensions/payment/forms.py:151 msgid "State/Province" -msgstr "" +msgstr "ایالت/استان" #: ecommerce/extensions/payment/forms.py:152 msgid "Zip/Postal Code" -msgstr "" +msgstr "کدپستی" #: ecommerce/extensions/payment/forms.py:153 msgid "Country (required)" -msgstr "" +msgstr "کشور (ضروری)" #: ecommerce/extensions/payment/forms.py:180 #: ecommerce/extensions/payment/forms.py:182 #: ecommerce/extensions/payment/forms.py:193 msgid "This field is required." -msgstr "" +msgstr "پرکردن این قسمت اجباری است" #: ecommerce/extensions/payment/forms.py:199 msgid "" "Postal codes for the U.S. and Canada are limited to nine (9) characters." -msgstr "" +msgstr "کدهای پستی ایالات متحده و کانادا به نه (9) نویسه محدود است." #: ecommerce/extensions/payment/models.py:27 msgid "Transaction ID" @@ -1363,31 +1405,31 @@ msgstr "پاسخ‌های پردازشگر پرداخت" msgid "" "Number of times to retry failing Paypal client actions (e.g., payment " "creation, payment execution)" -msgstr "" +msgstr "تعداد دفعات تلاش مجدد عملکردهای مشتری Paypal (مانند ایجاد پرداخت، اجرای پرداخت)" #: ecommerce/extensions/payment/models.py:112 msgid "More than 10 digits before the decimal not allowed for fixed value." -msgstr "" +msgstr "بیش از 10 رقم قبل از اعشار برای مقدار ثابت مجاز نیست." #: ecommerce/extensions/payment/models.py:118 msgid "More than 2 digits after the decimal not allowed for fixed value." -msgstr "" +msgstr "بیش از 2 رقم بعد از اعشار برای مقدار ثابت مجاز نیست." #: ecommerce/extensions/payment/models.py:126 msgid "Percentage greater than 100 not allowed." -msgstr "" +msgstr "درصدی بیشتر از 100 مجاز نیست." #. Translators: This is a string placed in the middle of a truncated string #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" -msgstr "" +msgstr "تراکنش رد شد" #. Translators: "Waffle" is the name of a third-party library. It should not #. be translated @@ -1397,7 +1439,7 @@ msgid "" "Refund administration has been disabled due to the load on the database. " "This functionality can be restored by activating the {switch_name} Waffle " "switch. Be careful when re-activating this switch!" -msgstr "" +msgstr "مدیریت بازپرداخت به دلیل بارگیری در پایگاه داده غیرفعال شده است. عملکرد مورد نظر را می‌توان با فعالسازی سوئیچ وافل {switch_name} بازیابی کرد. هنگام فعالسازی مجدد این سوئیچ مراقب باشید!" #: ecommerce/extensions/refund/models.py:67 msgid "Order" @@ -1430,7 +1472,7 @@ msgid "Line Credit (excl. tax)" msgstr "خط اعتبار (بدون احتساب مالیات)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1445,35 +1487,35 @@ msgstr "کمیت" #: ecommerce/extensions/voucher/models.py:40 msgid "Can be used once by one customer" -msgstr "" +msgstr "می‌تواند یک بار توسط یک مشتری استفاده شود" #: ecommerce/extensions/voucher/models.py:41 msgid "Can be used multiple times by multiple customers" -msgstr "" +msgstr "چندین بار توسط چند مشتری می‌تواند استفاده شود" #: ecommerce/extensions/voucher/models.py:42 msgid "Can only be used once per customer" -msgstr "" +msgstr "برای ازای هر مشتری فقط یک بار قابل استفاده است" #: ecommerce/extensions/voucher/models.py:43 msgid "Can be used multiple times by one customer" -msgstr "" +msgstr "امکان استفاده چندین باره از آن برای یک مشتری فراهم است" #: ecommerce/extensions/voucher/models.py:45 msgid "Usage" -msgstr "" +msgstr "استفاده" #: ecommerce/extensions/voucher/models.py:48 msgid "Is Public Code Batch" -msgstr "" +msgstr "دسته کد، عمومی است" #: ecommerce/extensions/voucher/models.py:49 msgid "Should this code batch be public or private for assignment." -msgstr "" +msgstr "آیا این دسته کد باید عمومی یا خصوصی برای انتساب باشد." #: ecommerce/extensions/voucher/models.py:63 msgid "This voucher is assigned to another user." -msgstr "" +msgstr "این کوپن به کاربر دیگری اختصاص داده شده است." #: ecommerce/extensions/voucher/tests/test_utils.py:215 #: ecommerce/extensions/voucher/utils.py:76 @@ -1485,7 +1527,7 @@ msgstr "بازخرید شد" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1525,7 +1567,7 @@ msgstr "استعلام کاتالوگ" #: ecommerce/extensions/voucher/utils.py:285 #: ecommerce/extensions/voucher/utils.py:340 msgid "Redeemed For Course IDs" -msgstr "" +msgstr "برای شناسه‌های دوره آموزشی بازخرید شد" #: ecommerce/extensions/voucher/utils.py:57 #: ecommerce/extensions/voucher/utils.py:284 @@ -1547,7 +1589,7 @@ msgstr "رمز" #: ecommerce/extensions/voucher/utils.py:171 msgid "This row applies to all vouchers" -msgstr "" +msgstr "این ردیف برای همه کوپن‌ها اعمال می‌شود" #: ecommerce/extensions/voucher/utils.py:172 #: ecommerce/extensions/voucher/utils.py:275 @@ -1593,7 +1635,7 @@ msgstr "میزان تخفیف" #: ecommerce/extensions/voucher/utils.py:180 #: ecommerce/extensions/voucher/utils.py:289 msgid "Email Domains" -msgstr "" +msgstr "دامنه‌های رایانامه" #: ecommerce/extensions/voucher/utils.py:181 #: ecommerce/extensions/voucher/utils.py:278 @@ -1683,7 +1725,7 @@ msgstr "گزارش کوپن برای {coupon_name}" #: ecommerce/extensions/voucher/views.py:40 msgid "" "Failed to find a matching stock record for coupon, report download canceled." -msgstr "" +msgstr "سابقه سهام منطبق با کوپن پیدا نشد، بارگیری گزارش لغو شد." #: ecommerce/invoice/models.py:13 msgid "Not Paid" @@ -1703,7 +1745,7 @@ msgstr "پس‌پرداخت" #: ecommerce/invoice/models.py:20 msgid "Bulk purchase" -msgstr "" +msgstr "خرید عمده" #: ecommerce/invoice/models.py:21 msgid "Not applicable" @@ -1715,58 +1757,58 @@ msgstr "اصلاح شد" #: ecommerce/management/templates/management/index.html:7 msgid "Management View" -msgstr "" +msgstr "نمای مدیریت" #: ecommerce/management/templates/management/index.html:26 msgid "Refund Transactions" -msgstr "" +msgstr "تراکنش‌های بازپرداخت" #: ecommerce/management/views.py:53 #, python-brace-format msgid "{action} is not a valid action." -msgstr "" +msgstr "{action} اقدامی معتبری نیست." #: ecommerce/programs/benefits.py:27 #, python-brace-format msgid "{value}% program discount" -msgstr "" +msgstr "{value}% تخفیف برنامه" #: ecommerce/programs/benefits.py:44 #, python-brace-format msgid "{value} fixed-price program discount" -msgstr "" +msgstr "{value} تخفیف برنامه با قیمت ثابت" #: ecommerce/programs/forms.py:70 msgid "An offer already exists for this program." -msgstr "" +msgstr "یک پیشنهاد از پیش برای این برنامه هست." #: ecommerce/programs/forms.py:90 #, python-brace-format msgid "{current_date} Discount for the {program_title} {program_type} Program" -msgstr "" +msgstr "{current_date} تخفیف برای برنامه {program_title} {program_type}" #: ecommerce/programs/templates/programs/programoffer_form.html:9 #, python-format msgid "Edit Program Offer: %(program_title)s" -msgstr "" +msgstr "ویرایش پیشنهاد برنامه: %(program_title)s" #: ecommerce/programs/templates/programs/programoffer_form.html:14 #: ecommerce/programs/templates/programs/programoffer_form.html:47 #: ecommerce/programs/templates/programs/programoffer_form.html:60 #: ecommerce/programs/templates/programs/programoffer_list.html:20 msgid "Create Program Offer" -msgstr "" +msgstr "ایجاد پیشنهاد برنامه" #: ecommerce/programs/templates/programs/programoffer_form.html:30 #: ecommerce/programs/templates/programs/programoffer_list.html:6 #: ecommerce/programs/templates/programs/programoffer_list.html:17 #: ecommerce/templates/edx/partials/_administration_menu.html:11 msgid "Program Offers" -msgstr "" +msgstr "پیشنهادهای برنامه" #: ecommerce/programs/templates/programs/programoffer_form.html:45 msgid "Edit Program Offer" -msgstr "" +msgstr "ویرایش پیشنهاد برنامه" #: ecommerce/programs/templates/programs/programoffer_form.html:76 #: ecommerce/programs/templates/programs/programoffer_list.html:60 @@ -1775,23 +1817,23 @@ msgid "" "\n" " %(platform_name)s Program Offer Administration Tool\n" " " -msgstr "" +msgstr "\n%(platform_name)sابزار مدیریت پیشنهاد برنامه" #: ecommerce/programs/templates/programs/programoffer_list.html:26 msgid "Current program offers" -msgstr "" +msgstr "پیشنهادهای برنامه فعلی" #: ecommerce/programs/templates/programs/programoffer_list.html:29 msgid "Program Title" -msgstr "" +msgstr "عنوان برنامه" #: ecommerce/programs/views.py:38 msgid "Program offer updated!" -msgstr "" +msgstr "پیشنهاد برنامه روزآمد شد!" #: ecommerce/programs/views.py:61 msgid "Program offer created!" -msgstr "" +msgstr "پیشنهاد برنامه ایجاد شد!" #: ecommerce/referrals/models.py:26 msgid "Affiliate ID" @@ -1799,29 +1841,29 @@ msgstr "شناسه وابسته" #: ecommerce/referrals/models.py:27 msgid "UTM Source" -msgstr "" +msgstr "منبع UTM" #: ecommerce/referrals/models.py:28 msgid "UTM Medium" -msgstr "" +msgstr "UTM متوسط" #: ecommerce/referrals/models.py:29 msgid "UTM Campaign" -msgstr "" +msgstr "چالش UTM" #: ecommerce/referrals/models.py:30 msgid "UTM Term" -msgstr "" +msgstr "مدت UTM" #: ecommerce/referrals/models.py:31 msgid "UTM Content" -msgstr "" +msgstr "محتوای UTM" #: ecommerce/referrals/models.py:32 msgid "UTM Created At" -msgstr "" +msgstr "UTM در ایجاد شده است" -#: ecommerce/settings/_oscar.py:216 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1834,38 +1876,38 @@ msgstr "" msgid "Dashboard" msgstr "پیشخوان" -#: ecommerce/settings/_oscar.py:221 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "فهرست" -#: ecommerce/settings/_oscar.py:225 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "محصولات" -#: ecommerce/settings/_oscar.py:229 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "انواع محصول" -#: ecommerce/settings/_oscar.py:233 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "فهرست‌ها" -#: ecommerce/settings/_oscar.py:237 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "دامنه‌ها" -#: ecommerce/settings/_oscar.py:241 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "هشدارهای پایین‌بودن سهام" -#: ecommerce/settings/_oscar.py:247 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "اجرا" -#: ecommerce/settings/_oscar.py:251 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1877,11 +1919,11 @@ msgstr "اجرا" msgid "Orders" msgstr "سفارش‌ها" -#: ecommerce/settings/_oscar.py:255 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "آمار" -#: ecommerce/settings/_oscar.py:263 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1892,53 +1934,53 @@ msgstr "آمار" msgid "Refunds" msgstr "بازپرداخت" -#: ecommerce/settings/_oscar.py:269 ecommerce/settings/_oscar.py:273 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "مشتریان" -#: ecommerce/settings/_oscar.py:277 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "درخواست‌های هشدار سهام" -#: ecommerce/settings/_oscar.py:283 ecommerce/settings/_oscar.py:287 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "ارائه می‌دهد" -#: ecommerce/settings/_oscar.py:291 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "کوپن‌ها" -#: ecommerce/settings/_oscar.py:297 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "گزارش‌ها" #: ecommerce/settings/base.py:93 msgid "English" -msgstr "" +msgstr "انگلیسی" #: ecommerce/settings/base.py:94 msgid "Spanish" -msgstr "" +msgstr "اسپانیولی" #: ecommerce/settings/base.py:95 msgid "Spanish (Latin American)" -msgstr "" +msgstr "اسپانیولی (آمریکای لاتین)" #: ecommerce/templates/base.html:10 msgid "Build" -msgstr "" +msgstr "ساخت" #: ecommerce/templates/base.html:71 msgid "Version:" -msgstr "" +msgstr "نسخه:" #: ecommerce/templates/coupons/_offer_error.html:4 #: ecommerce/templates/coupons/offer.html:5 #: ecommerce/templates/edx/email_confirmation_required.html:4 msgid "Redeem" -msgstr "" +msgstr "بازخرید" #: ecommerce/templates/coupons/coupon_app.html:5 msgid "Coupon Codes" @@ -1992,7 +2034,7 @@ msgid "" "\n" " %(platform_name)s Course Administration Tool\n" " " -msgstr "" +msgstr "\n%(platform_name)sابزار مدیریت دوره آموزشی" #: ecommerce/templates/courses/menu_options.html:8 msgid "Student Dashboard" @@ -2013,11 +2055,11 @@ msgstr "خروج" #: ecommerce/templates/edx/checkout/receipt.html:13 #, python-format msgid "Receipt for %(order_number)s" -msgstr "" +msgstr "رسید برای %(order_number)s" #: ecommerce/templates/edx/checkout/receipt.html:43 msgid "Thank you for your order!" -msgstr "" +msgstr "از سفارش شما سپاسگزاریم!" #: ecommerce/templates/edx/checkout/receipt.html:53 #, python-brace-format @@ -2025,91 +2067,100 @@ msgid "" "Your order is complete. You will receive a confirmation message and your " "enrollment code(s) at {link_start}{email}{link_end}. If you need a receipt, " "you can print this page." +msgstr "سفارش شما تکمیل شد. یک پیام تأیید و کد(های) ثبت‌نام خود را در {link_start}{email}{link_end} دریافت خواهید کرد. در صورت نیاز به دریافت رسید، می‌توانید این صفحه را چاپ کنید." + +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "سفارش شما تکمیل شد. در صورت نیاز به رسید، می‌توانید این صفحه را چاپ کنید." -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" -msgstr "" +msgstr "شماره سفارش:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" -msgstr "" +msgstr "شیوه پرداخت:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" -msgstr "" +msgstr "تاریخ سفارش:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" -msgstr "" +msgstr "اطلاعات سفارش" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" -msgstr "" +msgstr "شرح" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "قیمت" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "کمیت:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" -msgstr "" +msgstr "شرح:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" -msgstr "" +msgstr "قیمت محصول:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" -msgstr "" +msgstr "جمع فرعی" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" -msgstr "" +msgstr "%(voucher_discount_amount)s خاموش" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" -msgstr "" +msgstr "تخفیف نوع %(type)s ارائه‌شده توسط %(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" -msgstr "" +msgstr "تخفیف برای اولین ارتقا شما" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." -msgstr "" +msgstr "تخفیف نوع %(type)sارائه می‌شود." -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." -msgstr "" +msgstr "با احترام %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" -msgstr "" +msgstr "جمع" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" -msgstr "" +msgstr "اعتبار دوره آموزشی خود را دریافت کنید" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2117,30 +2168,30 @@ msgid "" "organization’s website on your " "{link_start}{lms_dashboard_url}{link_middle}dashboard{link_end}, next to the" " course name." -msgstr "" +msgstr "برای دریافت اعتبار علمی این دوره آموزشی، باید به سازمانی که اعتبار را ارائه می‌دهد، درخواست اعتبار کنید. می‌توانید پیوندی به وبگاه سازمان در {link_start}{lms_dashboard_url}{link_middle}پیشخوان {link_end} خود، در کنار نام دوره آموزشی بیابید." -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" -msgstr "" +msgstr "بازگشت به پیشخوان" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" -msgstr "" +msgstr "دوره‌های آموزشی بیشتری بیاب" #: ecommerce/templates/edx/checkout/receipt_not_found.html:7 msgid "Order Not Found" -msgstr "" +msgstr "سفارش پیدا نشد" #: ecommerce/templates/edx/checkout/receipt_not_found.html:19 #, python-format msgid " %(error_summary)s " -msgstr "" +msgstr "%(error_summary)s" #: ecommerce/templates/edx/checkout/receipt_not_found.html:23 msgid "" "The specified order could not be located. Please ensure that the URL is " "correct, and try again." -msgstr "" +msgstr "سفارش مشخص‌شده یافت نشد. لطفاً اطمینان حاصل کنید که نشانی اینترنتی صحیح است و دوباره امتحان کنید." #: ecommerce/templates/edx/checkout/receipt_not_found.html:31 #, python-brace-format @@ -2149,7 +2200,7 @@ msgid "" " You may also view your previous orders on the {link_start}{order_history_url}{link_middle}{link_end}Account Settings{link_end}\n" " page.\n" " " -msgstr "" +msgstr "\nهمچنین می‌توانید سفارش‌های پیشین خود را در صفحه {link_start}{order_history_url}{link_middle}{link_end}تنظیمات حساب کاربری {link_end} مشاهده کنید." #: ecommerce/templates/edx/credit/_provider_detail.html:8 msgid "Select" @@ -2169,7 +2220,7 @@ msgid "" "\n" " Learn more about %(display_name)s credit?\n" " " -msgstr "" +msgstr "\n مایلید درباره اعتبار %(display_name)sبیشتر بدانید؟" #: ecommerce/templates/edx/credit/_provider_detail.html:47 #, python-format @@ -2177,7 +2228,7 @@ msgid "" "\n" " Credit available until %(date)s\n" " " -msgstr "" +msgstr "\nاعتبار تا %(date)s معتبر است" #: ecommerce/templates/edx/credit/checkout.html:9 #, python-format @@ -2190,7 +2241,7 @@ msgid "" "\n" " Purchase Credit for %(course_name)s\n" " " -msgstr "" +msgstr "\nخرید اعتبار برای %(course_name)s" #: ecommerce/templates/edx/credit/checkout.html:34 #, python-format @@ -2200,15 +2251,15 @@ msgid "" " You must purchase your credit before %(date)s.\n" " Select one of the following institutions to purchase your credit.\n" " " -msgstr "" +msgstr "\n تبریک می گوییم! شما واجدشرایط خرید اعتبار تحصیلی برای این دوره آموزشی شناخته شدید.\n باید اعتبار خود را پیش از %(date)s خریداری کنید.\n یکی از موسسات زیر را برای خرید اعتبار خودبرگزینید." #: ecommerce/templates/edx/credit/checkout.html:51 msgid "Price:" -msgstr "" +msgstr "قیمت:" #: ecommerce/templates/edx/credit/checkout.html:55 msgid "Discount:" -msgstr "" +msgstr "تخفیف:" #: ecommerce/templates/edx/credit/checkout.html:60 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:127 @@ -2255,28 +2306,28 @@ msgid "" "\n" " Please read {link_start}our FAQs to view common questions about our certificates.{link_end}\n" " " -msgstr "" +msgstr "\nلطفاً {link_start} قسمت سؤالات متداول را برای مشاهده مسایل رایج درباره گواهی‌ها مطالعه کنید.{link_end}" #: ecommerce/templates/edx/email_confirmation_required.html:16 msgid "You are enrolling in: " -msgstr "" +msgstr "شما در حال ثبت‌نام هستید در :" #: ecommerce/templates/edx/email_confirmation_required.html:26 #, python-format msgid "" "An email has been sent to %(user_email)s with a link for you to activate " "your account." -msgstr "" +msgstr "رایانامه‌ای به %(user_email)s به‌همراه پیوندی برای فعالسازی حساب کاربری‌خود ارسال شده است." #: ecommerce/templates/edx/email_confirmation_required.html:29 msgid "Why activate?" -msgstr "" +msgstr "چرا آن را فعال کنم؟" #: ecommerce/templates/edx/email_confirmation_required.html:31 msgid "" "We ask you to activate your account to ensure it is really you creating the " "account and to prevent fraud." -msgstr "" +msgstr "از شما می‌خواهیم حساب کاربری خود را فعال کنید تا اطمینان حاصل شود که شما هستید که حساب کاربری ایجاد کردید و از کلاهبرداری جلوگیری می‌شود." #: ecommerce/templates/edx/error.html:17 msgid "If you need assistance, contact edX support." @@ -2288,7 +2339,7 @@ msgstr "کوپن‌ها" #: ecommerce/templates/edx/partials/_administration_menu.html:8 msgid "Enterprise Coupons" -msgstr "" +msgstr "کوپن‌های سازمانی" #: ecommerce/templates/edx/partials/_base_navbar.html:10 msgid "Toggle navigation" @@ -2309,19 +2360,19 @@ msgstr "ورود" #: ecommerce/templates/edx/partials/_staff_navbar.html:9 msgid "E-Commerce Course Administration" -msgstr "" +msgstr "مدیریت دوره‌های آموزشی تجارت الکترونیک" #: ecommerce/templates/edx/partials/_staff_navbar.html:14 msgid "E-Commerce Coupon Administration" -msgstr "" +msgstr "مدیریت کوپن تجارت الکترونیک" #: ecommerce/templates/edx/partials/_staff_navbar.html:19 msgid "E-Commerce Program Offers Administration" -msgstr "" +msgstr "مدیریت پیشنهادهای برنامه تجارت الکترونیک" #: ecommerce/templates/oscar/basket/basket.html:48 msgid "Your basket is empty" -msgstr "" +msgstr "سبد خرید شما خالی است" #: ecommerce/templates/oscar/basket/basket.html:49 #, python-brace-format @@ -2330,11 +2381,11 @@ msgid "" " If you attempted to make a purchase, you have not been charged. Return to your {link_start}{link_middle}{homepage_url}dashboard{link_end} to try\n" " again, or {link_start}{homepage_url}{link_middle}contact {platform_name} Support{link_end}.\n" " " -msgstr "" +msgstr "\n اگر اقدام به خرید کرده‌اید، هزینه‌ای از شما دریافت نشده است. برای امتحان دوباره به {link_start}{link_middle}{homepage_url}داشبورد{link_end} خود بازگردید یا {link_start}{homepage_url}{link_middle}با پشتیبانی {platform_name}{link_end} تماس بگیرید." #: ecommerce/templates/oscar/basket/messages/new_total.html:7 msgid "Your basket is now empty" -msgstr "" +msgstr "الان سبد خرید شما خالی است" #: ecommerce/templates/oscar/basket/messages/new_total.html:10 #: ecommerce/templates/oscar/basket/messages/new_total.html:16 @@ -2344,15 +2395,15 @@ msgid "" " {strong_start}We’ve updated your quantity.{strong_end}\n" " {paragraph_start}Your cart includes {num_items} enrollment codes at a total cost of {total}, that you will receive via email.{paragraph_end}\n" " " -msgstr "" +msgstr "\n {strong_start}مقدار مورد نظر شما را روزآمد کرده‌ایم.{strong_end} {paragraph_start} سبد خرید شما شامل {num_items} کد ثبت‌نام با هزینه کل {total} است که از طریق رایانامه دریافت خواهید کرد.{paragraph_end}" #: ecommerce/templates/oscar/basket/messages/new_total.html:27 msgid "View basket" -msgstr "" +msgstr "مشاهده سبد خرید" #: ecommerce/templates/oscar/basket/messages/new_total.html:28 msgid "Checkout now" -msgstr "" +msgstr "اکنون تسویه حساب کنید" #: ecommerce/templates/oscar/basket/partials/add_voucher_form.html:11 msgid "Applying..." @@ -2364,11 +2415,11 @@ msgstr "اعمال" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:16 msgid "in your cart" -msgstr "" +msgstr "در کارت شما" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:17 msgid "Your purchase contains the following" -msgstr "" +msgstr "خرید شما شامل اقلام زیر است" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:36 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:57 @@ -2383,11 +2434,11 @@ msgstr "روزآمدسازی" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:47 msgid "summary" -msgstr "" +msgstr "خلاصه" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:68 msgid "Discounts applied" -msgstr "" +msgstr "تخفیف‌ها اعمال شد" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:80 #, python-format @@ -2395,7 +2446,7 @@ msgid "" "\n" " %(benefit)s discount provided by %(enterprise_customer_name)s.\n" " " -msgstr "" +msgstr "\n%(benefit)s تخفیف فراهم شده توسط %(enterprise_customer_name)s." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:87 #, python-format @@ -2403,7 +2454,7 @@ msgid "" "\n" " %(benefit)s%% discount for your first upgrade applied.\n" " " -msgstr "" +msgstr "\n %(benefit)s%% تخفیف برای اولین ارتقای شما اعمال‌شد." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:104 #, python-format @@ -2411,94 +2462,94 @@ msgid "" "\n" " Coupon %(voucher_code)s applied for %(total_benefit)s off\n" " " -msgstr "" +msgstr "\n کوپن %(voucher_code)s برای%(total_benefit)sتخفیف اعمال شد" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:110 msgid "Remove coupon" -msgstr "" +msgstr "حذف کوپن" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:119 msgid "Add coupon code" -msgstr "" +msgstr "افزودن کدکوپن" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:119 msgid "(optional)" -msgstr "" +msgstr "(اختیاری)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:128 msgid "TOTAL" -msgstr "" +msgstr "جمع" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:135 msgid "order details" -msgstr "" +msgstr "جزییات سفارش" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:153 msgid "select payment method" -msgstr "" +msgstr "انتخاب شیوه پرداخت" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:155 msgid "Pay with a Credit Card" -msgstr "" +msgstr "پرداخت با کارت اعتباری" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:166 msgid "Pay with PayPal" -msgstr "" +msgstr "پرداخت با PayPal" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:175 msgid "Pay with Apple Pay" -msgstr "" +msgstr "پرداخت با Apple Pay" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:190 msgid "card holder information" -msgstr "" +msgstr "اطلاعات دارنده کارت" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:201 msgid "billing information" -msgstr "" +msgstr "اطلاعات صورت‌حساب" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:203 msgid "Credit cards" -msgstr "" +msgstr "کارت‌های اعتباری" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:210 msgid "Card Number (required)" -msgstr "" +msgstr "شماره کارت (ضروری)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:210 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:220 msgid "Secure" -msgstr "" +msgstr "امن است" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:213 msgid "Credit card icon" -msgstr "" +msgstr "نماد کارت اعتباری" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:219 msgid "Security Code (required)" -msgstr "" +msgstr "کد امنیتی (الزامی)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:223 msgid "Help with CVV" -msgstr "" +msgstr "راهنمایی با CVV\n " #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:226 msgid "" "The three last digits in the signature area on the back of your card. For " "American Express, it is the four digits on the front of the card." -msgstr "" +msgstr "سه رقم آخر در قسمت امضا در پشت کارت شما. برای امریکن اکسپرس، این چهار رقم در جلوی کارت است." #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:233 msgid "Expiration (required)" -msgstr "" +msgstr "انقضا (الزامی)" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:237 msgid "Month" -msgstr "" +msgstr "ماه" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:247 msgid "Year" -msgstr "" +msgstr "سال" #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:264 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:274 @@ -2516,7 +2567,7 @@ msgid "" "\n" " %(benefit_value)s off\n" " " -msgstr "" +msgstr "\n%(benefit_value)sخاموش" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:99 #, python-format @@ -2524,7 +2575,7 @@ msgid "" "\n" " Coupon code %(voucher_code)s applied\n" " " -msgstr "" +msgstr "\n کد کوپن %(voucher_code)s اعمال شد" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:116 msgid "Apply a coupon code" @@ -2533,7 +2584,7 @@ msgstr "اعمال کد کوپن" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:164 #, python-format msgid "Checkout with %(title)s" -msgstr "" +msgstr "پرداخت با %(title)s" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:166 msgid "Checkout" @@ -2546,7 +2597,7 @@ msgstr "پرداخت" msgid "" "{strong_start}Note:{strong_end} To complete your enrollment, select Checkout" " or Checkout with PayPal." -msgstr "" +msgstr "{strong_start}توجه کنید:{strong_end} برای تکمیل ثبت‌نام، Checkout یا پرداخت با PayPal را برگزینید." #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:185 msgid "Have questions?" @@ -2562,7 +2613,7 @@ msgid "" "\n" " %(seat_type)s Certificate\n" " " -msgstr "" +msgstr "\n%(seat_type)s گواهی" #: ecommerce/templates/oscar/checkout/cancel_checkout.html:7 #: ecommerce/templates/oscar/checkout/cancel_checkout.html:16 @@ -2576,7 +2627,7 @@ msgid "" " Your transaction has been cancelled. If you feel an error has occurred, contact {start_link}\n" " {payment_support_email}{end_link}.\n" " " -msgstr "" +msgstr "\n تراکنش شما لغو شده است. اگر تصویر می‌کنید خطایی رخ داده است، با {start_link} {payment_support_email}{end_link} تماس بگیرید." #: ecommerce/templates/oscar/checkout/error.html:7 #: ecommerce/templates/oscar/checkout/error.html:18 @@ -2585,11 +2636,11 @@ msgstr "خطای خروج" #: ecommerce/templates/oscar/checkout/error.html:19 msgid "An error has occurred with your payment." -msgstr "" +msgstr "خطایی در پرداخت شما رخ داد." #: ecommerce/templates/oscar/checkout/error.html:19 msgid "You have not been charged." -msgstr "" +msgstr "مبلغی از حساب شما کسر نشده است." #: ecommerce/templates/oscar/checkout/error.html:21 #, python-brace-format @@ -2598,38 +2649,38 @@ msgid "" " Please try to submit your payment again. If this problem persists, please refer to our {start_link}\n" " Payments FAQ {end_link} for troubleshooting tips.\n" " " -msgstr "" +msgstr "\n لطفاً دوباره پرداخت خود را تایید کنید. اگر این مشکل ادامه داشت، لطفاً برای دریافت نکات عیب‌یابی به {start_link} سؤالات متداول مربوط به پرداخت‌ها {end_link} مراجعه کنید." #: ecommerce/templates/oscar/checkout/payment_error.html:7 #: ecommerce/templates/oscar/checkout/payment_error.html:16 msgid "Payment Failed" -msgstr "" +msgstr "پرداخت ناموفق" #: ecommerce/templates/oscar/checkout/payment_error.html:18 #, python-brace-format msgid "" "An error occurred while processing your payment. {strong_start}You have not " "been charged.{strong_end}" -msgstr "" +msgstr "هنگام پردازش پرداخت شما خطایی روی داد. {strong_start} هزینه‌ای از شما دریافت نشده‌است.{strong_end}" #: ecommerce/templates/oscar/checkout/payment_error.html:25 #, python-brace-format msgid "" "Please wait a few minutes and then try again. For help, check our " "{start_link}Help Center{end_link}." -msgstr "" +msgstr "لطفا چند دقیقه صبر کنید و سپس دوباره تلاش کنید. برای دریافت راهنمایی، {start_link}مرکز راهنمایی{end_link} ما را بررسی کنید." #: ecommerce/templates/oscar/checkout/payment_error.html:32 #, python-brace-format msgid "To try again, return to your {start_link}dashboard{end_link}." -msgstr "" +msgstr "برای تلاش مجدد، به {start_link}پیشخوان{end_link} خود بازگردید." #: ecommerce/templates/oscar/checkout/sdn_failure.html:9 msgid "" "\n" " SDN Check Failure\n" " " -msgstr "" +msgstr "\n SDN Check Failure" #: ecommerce/templates/oscar/checkout/sdn_failure.html:26 msgid "" @@ -2637,7 +2688,7 @@ msgid "" "one or more records on a U.S. Treasury Department sanctions list. This means" " we cannot complete your transaction or provide you with services and must " "suspend your learner account." -msgstr "" +msgstr "متأسفانه، به نظر می‌رسد پرونده حساب کاربری یا اطلاعات پرداخت شما با یک یا چند رکورد در فهرست تحریم‌های وزارت خزانه‌داری ایالات متحده مطابقت دارد. این بدان معناست که ما نمی‌توانیم تراکنش شما را تکمیل کرده یا خدماتی را به شما ارائه کنیم و باید حساب کاربری یادگیرنده شما را معلق نماییم." #: ecommerce/templates/oscar/checkout/sdn_failure.html:35 #, python-brace-format @@ -2646,7 +2697,7 @@ msgid "" "{ofac_email_link} ofac.reconsideration@treasury.gov{end_link} for " "information about options for clearing a match. Your account will be " "suspended until this matter is resolved satisfactorily." -msgstr "" +msgstr "اگر درباره پاک‌کردن مسابقه سؤالی دارید، لطفاً برای کسب اطلاعات درباره گزینه‌های پاک کردن مسابقه با {ofac_email_link} ofac.reconsideration@treasury.gov{end_link} تماس بگیرید. حساب کاربری شما تا زمانی که این موضوع کاملا برطرف نشود، به حالت تعلیق در خواهد آمد." #: ecommerce/templates/oscar/communication/email_base.html:189 #: ecommerce/templates/oscar/customer/email_base.html:189 @@ -2666,7 +2717,7 @@ msgstr "سلام %(full_name)s،" msgid "" "Thank you for purchasing %(course_title)s. A charge will appear on your " "credit or debit card statement with a company name of \"%(platform_name)s\"." -msgstr "" +msgstr "از خرید %(course_title)s سپاسگزاریم. هزینه‌ای با نام شرکت \"%(platform_name)s\" در صورت حساب کارت اعتباری یا نقدی شما ظاهر می‌شود." #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:13 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:8 @@ -2814,7 +2865,7 @@ msgstr "رسید سفارش" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:14 msgid "For Business" -msgstr "" +msgstr "برای تجارت" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:26 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:6 @@ -2822,7 +2873,7 @@ msgstr "" msgid "" "Thank you for purchasing access to %(course_name)s. Let's get your group " "ready to learn with edX:" -msgstr "" +msgstr "از خرید دسترسی به%(course_name)s سپاسگزاریم. بیایید گروه شما را برای یادگیری با ادکس آماده کنیم:" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:29 #, python-brace-format @@ -2830,22 +2881,22 @@ msgid "" "\n" " Download and save the {link_start}{download_csv_link}{link_middle} enrollment code file.{link_end}\n" " " -msgstr "" +msgstr "\n پرونده کد ثبت‌نام {link_start}{download_csv_link}{link_middle} را بارگیری و ذخیره کنید.{link_end}" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:34 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:9 msgid "Distribute one code per learner before the expiration date." -msgstr "" +msgstr "پیش از تاریخ انقضا یک کد برای هر یادگیرنده توزیع کنید." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:35 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:10 msgid "Pro tip: Track which code is associated with which person." -msgstr "" +msgstr "نکته حرفه ای: پیگیری کنید کدام کد با کدام شخص مرتبط است." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:36 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:11 msgid "Learners sign-in/register with edX and enroll for the course." -msgstr "" +msgstr "یادگیرندگان با ادکس به سامانه ورود می‌کنند/ثبت‌نام می‌کنند و در دوره آموزشی ثبت‌نام می‌نمایند." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:39 #, python-brace-format @@ -2853,7 +2904,7 @@ msgid "" "\n" " To view your payment information, log in to see your Order History, under {link_start}{order_history_url}{link_middle}Account Settings{link_end}.\n" " " -msgstr "" +msgstr "\nبرای مشاهده اطلاعات پرداخت و مشاهده سابقه سفارش خود، در زیر {link_start}{order_history_url}{link_middle}تنظیمات حساب کاربری {link_end} وارد شوید." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:45 #, python-brace-format @@ -2861,52 +2912,52 @@ msgid "" "\n" " For more information and assistance, check our {link_start}Help Center{link_end}\n" " " -msgstr "" +msgstr "\n برای اطلاعات بیشتر و دریافت راهنمایی، به {link_start}راهنمایی{link_end} ما مراجعه کنید." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:50 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:16 msgid "Thank You" -msgstr "" +msgstr "سپاس از شما" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:61 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:18 msgid "By purchasing, you and your organization agree to the following terms:" -msgstr "" +msgstr "با خرید، شما و سازمان‌تان با شرایط زیر موافقت می‌کنید:" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:63 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:20 msgid "" "Each code is valid for the one course covered and can be used only one time." -msgstr "" +msgstr "هر کد برای یک دوره آموزشی تحت پوشش معتبر است و این کد یکبارمصرف است." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:64 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:21 msgid "You are responsible for distributing codes to your learners." -msgstr "" +msgstr "شما مسئول توزیع کدها به یادگیرندگان خود هستید." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:65 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:22 msgid "" "Each code will expire in one year from date of purchase or, if earlier, once" " the course is closed." -msgstr "" +msgstr "هنگامی که دوره آموزشی بسته شود، هر کد به مدت یک‌سال از تاریخ خرید یا زودتر منقضی می‌شود." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:66 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:23 msgid "" "If a course is not designated as self-paced, you should confirm that a " "course run is available before expiration." -msgstr "" +msgstr "اگر دوره آموزشی به‌عنوان خودآموز تعیین نشده باشد، باید تأیید کنید که اجرای دوره آموزشی پیش از انقضا در دسترس است." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:67 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:24 msgid "You may not resell codes to third parties." -msgstr "" +msgstr "امکان فروش کدها به اشخاص ثالث نیست." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:68 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:25 msgid "All sales final. No refunds." -msgstr "" +msgstr "تمام فروش نهایی شده‌اند. بدون بازپرداخت است." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:2 msgid "Order confirmation for: " @@ -2917,18 +2968,18 @@ msgstr "تایید سفارش برای:" msgid "" "Please visit %(download_csv_link)s to download and save the enrollment code " "file." -msgstr "" +msgstr "لطفاً برای بارگیری و ذخیره پرونده کد ثبت‌نام از %(download_csv_link)s بازدید کنید." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:13 #, python-format msgid "" "To view your payment information, log in to see your Order History, under " "Account Settings at %(order_history_url)s." -msgstr "" +msgstr "برای مشاهده اطلاعات پرداخت خود، وارد سامانه شوید تا سابقه سفارش خود را در قسمت تنظیمات حساب کاربری در %(order_history_url)sمشاهده کنید." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:14 msgid "For more information and assistance, contact info@edx.org." -msgstr "" +msgstr "برای اطلاعات بیشتر ودریافت راهنمایی، با info@edx.org تماس بگیرید." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_subject.txt:2 #, python-format @@ -2969,7 +3020,7 @@ msgid "" "\n" " Created product variant '%(name)s'.\n" " " -msgstr "" +msgstr "\nنوع محصول '%(name)s' ایجاد شد." #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:17 #, python-format @@ -2977,7 +3028,7 @@ msgid "" "\n" " Created variant of '%(parent_name)s'.\n" " " -msgstr "" +msgstr "\n نوع '%(parent_name)s' ایجاد شد." #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:25 #, python-format @@ -2985,7 +3036,7 @@ msgid "" "\n" " Updated product variant '%(name)s'.\n" " " -msgstr "" +msgstr "\nنوع محصول روزآمد شده '%(name)ss'." #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:31 #, python-format @@ -2993,7 +3044,7 @@ msgid "" "\n" " Updated a variant of '%(parent_name)s'.\n" " " -msgstr "" +msgstr "\n گونه‌ای از '%(parent_name)s' روزآمد شد." #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:42 #, python-format @@ -3001,7 +3052,7 @@ msgid "" "\n" " Created product '%(name)s'.\n" " " -msgstr "" +msgstr "\n محصول '%(name)s' ایجاد شد." #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:48 #, python-format @@ -3009,7 +3060,7 @@ msgid "" "\n" " Updated product '%(name)s'.\n" " " -msgstr "" +msgstr "\nمحصول روزآمد'%(name)s'" #: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:60 msgid "Edit again" @@ -3022,7 +3073,7 @@ msgid "" " You are currently editing a product variant of\n" " {start_anchor}{title}{end_anchor}.\n" " " -msgstr "" +msgstr "\n شما در حال ویرایش یک نوع محصول از {start_anchor}{title}{end_anchor} هستید." #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:61 msgid "Sections" @@ -3068,7 +3119,7 @@ msgstr "بارگذاری، تغییر یا حذف تصاویر" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:194 msgid "SKU" -msgstr "" +msgstr "SKU" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:196 msgid "Num in stock" @@ -3154,7 +3205,7 @@ msgstr "ذخیره" #: ecommerce/templates/oscar/dashboard/index.html:27 msgid "Store Statistics (Last 24 Hours)" -msgstr "" +msgstr "آمار فروشگاه (24 ساعت گذشته)" #: ecommerce/templates/oscar/dashboard/index.html:34 msgid "New Customers" @@ -3163,19 +3214,19 @@ msgstr "مشتریان جدید" #: ecommerce/templates/oscar/dashboard/index.html:35 #: ecommerce/templates/oscar/dashboard/index.html:41 msgid "Revenue" -msgstr "" +msgstr "درآمد" #: ecommerce/templates/oscar/dashboard/index.html:36 msgid "Average order cost" -msgstr "" +msgstr "میانگین هزینه سفارش" #: ecommerce/templates/oscar/dashboard/index.html:37 msgid "Average (paid) order cost" -msgstr "" +msgstr "میانگین (پرداختی) هزینه سفارش " #: ecommerce/templates/oscar/dashboard/index.html:67 msgid "Products and vouchers" -msgstr "" +msgstr "محصولات و کوپن‌ها" #: ecommerce/templates/oscar/dashboard/index.html:69 msgid "Total products" @@ -3183,83 +3234,83 @@ msgstr "محصولات کلی" #: ecommerce/templates/oscar/dashboard/index.html:73 msgid "Active Vouchers" -msgstr "" +msgstr "کوپن‌های فعال" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:6 #, python-format msgid "%(name)s | Offers " -msgstr "" +msgstr "%(name)sپیشنهاد می‌کنم" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:25 msgid "Reinstating..." -msgstr "" +msgstr "در حال بازگردانی..." #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:25 msgid "Reinstate offer" -msgstr "" +msgstr "بازگرداندن پیشنهاد" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:26 msgid "Suspending..." -msgstr "" +msgstr "در حال تعلیق..." #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:26 msgid "Suspend offer" -msgstr "" +msgstr "پیشنهاد معلق" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:27 msgid "Delete offer" -msgstr "" +msgstr "حذف پیشنهاد" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:38 msgid "Offer currently available" -msgstr "" +msgstr "پیشنهاد اکنون فراهم است" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:39 msgid "Offer not available due to restrictions!" -msgstr "" +msgstr "پیشنهاد به‌دلیل محدودیت فراهم نیست!" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:41 msgid "Total cost:" -msgstr "" +msgstr "هزینه کل:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:42 msgid "Number of orders:" -msgstr "" +msgstr "شماره سفارش‌ها:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:43 msgid "Number of uses:" -msgstr "" +msgstr "تعداد موارد استفاده:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:48 msgid "Date created:" -msgstr "" +msgstr "تاریخ ایجاد:" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:49 msgid "Offer details" -msgstr "" +msgstr "جزییات پیشنهاد" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:67 #: ecommerce/templates/oscar/dashboard/offers/summary.html:20 msgid "Incentive" -msgstr "" +msgstr "انگیزه" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:72 #: ecommerce/templates/oscar/dashboard/offers/summary.html:26 msgid "Condition" -msgstr "" +msgstr "شرط" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:77 #: ecommerce/templates/oscar/dashboard/offers/summary.html:31 msgid "Restrictions" -msgstr "" +msgstr "محدودیت‌ها" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:92 msgid "Export to CSV" -msgstr "" +msgstr "صدور به CSV" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:93 msgid "Orders that used this offer" -msgstr "" +msgstr "سفارش‌هایی که از این پیشنهاد استفاده کرده‌اند" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:97 #: ecommerce/templates/oscar/dashboard/orders/order_list.html:68 @@ -3268,7 +3319,7 @@ msgstr "شماره سفارش" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:98 msgid "Order date" -msgstr "" +msgstr "تاریخ سفارش" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:99 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:292 @@ -3277,11 +3328,11 @@ msgstr "کل سفارش" #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:100 msgid "Cost" -msgstr "" +msgstr "هزینه" #: ecommerce/templates/oscar/dashboard/offers/summary.html:4 msgid "Offer summary" -msgstr "" +msgstr "خلاصه پیشنهاد" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:6 #, python-format @@ -3314,7 +3365,7 @@ msgstr "نوع محصول" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:140 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:110 msgid "UPC" -msgstr "" +msgstr "UPC" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:54 msgid "Product Options" @@ -3326,7 +3377,7 @@ msgstr "مشخصات همکار" #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:77 msgid "Partner SKU" -msgstr "" +msgstr "همکار SKU\n " #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:83 msgid "Shipping details" @@ -4012,4 +4063,4 @@ msgstr "این مشتری هنوز نظری ارائه نکرده است." #: ecommerce/urls.py:45 msgid "E-Commerce Service Administration" -msgstr "" +msgstr "مدیریت خدمات تجارت الکترونیک" diff --git a/ecommerce/conf/locale/fa_IR/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/fa_IR/LC_MESSAGES/djangojs.mo index dc202a7640e..9728a6b2583 100644 Binary files a/ecommerce/conf/locale/fa_IR/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/fa_IR/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/fa_IR/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/fa_IR/LC_MESSAGES/djangojs.po index 683bd2ff484..325c117e225 100644 --- a/ecommerce/conf/locale/fa_IR/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/fa_IR/LC_MESSAGES/djangojs.po @@ -16,10 +16,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-09-04 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Somaye Joolaee, 2022\n" -"Language-Team: Persian (Iran) (http://www.transifex.com/open-edx/edx-platform/language/fa_IR/)\n" +"Language-Team: Persian (Iran) (http://app.transifex.com/open-edx/edx-platform/language/fa_IR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,12 +47,12 @@ msgstr "حداقل یک نوع جایگاه باید انتخاب شود." #: ecommerce/static/js/models/coupon_model.js:72 msgid "This field must be empty or contain 1-16 alphanumeric characters." -msgstr "" +msgstr "این قسمت باید خالی باشد یا حاوی 1-16 نویسه الفبایی باشد." #: ecommerce/static/js/models/coupon_model.js:81 #, javascript-format msgid "Email domain {%s} is invalid." -msgstr "" +msgstr "دامنه رایانامه {%s} معتبر نیست." #: ecommerce/static/js/models/coupon_model.js:98 msgid "Must occur after start date" @@ -60,7 +60,7 @@ msgstr "باید پس از تاریخ آغاز انجام شود" #: ecommerce/static/js/models/coupon_model.js:128 msgid "Max uses for multi-use coupons must be higher than 2." -msgstr "" +msgstr "حداکثر استفاده برای کوپن‌های چندمنظوره باید بیش از 2 باشد." #: ecommerce/static/js/models/coupon_model.js:152 msgid "Must occur before end date" @@ -72,7 +72,7 @@ msgstr "شناسه دوره آموزشی معتبری وارد کنید" #: ecommerce/static/js/models/coupon_model.js:188 msgid "A valid Program UUID is required." -msgstr "" +msgstr "یک برنامه معتبر UUID  الزامی است." #: ecommerce/static/js/models/course_model.js:54 msgid "You must select a course type." @@ -118,7 +118,7 @@ msgstr "همه صندلی‌های دوره آموزشی باید قیمتی د #: ecommerce/static/js/models/course_seats/course_seat.js:45 msgid "Verified seats must have an upgrade deadline." -msgstr "" +msgstr "جایگاه‌های تاییدشده باید مهلت ارتقا داشته باشند." #: ecommerce/static/js/models/course_seats/course_seat.js:53 msgid "The upgrade deadline must occur BEFORE the verification deadline." @@ -175,47 +175,47 @@ msgstr "برای همه صندلی‌های اعتباری باید تعدادی #: ecommerce/static/js/models/enterprise_coupon_model.js:18 msgid "This value must be a valid email." -msgstr "" +msgstr "این مقدار باید نشانی رایانامه‌ای معتبر باشد." #: ecommerce/static/js/pages/basket_page.js:27 msgid "Problem occurred during checkout. Please contact support." -msgstr "" +msgstr "هنگام تسویه حساب مشکلی رخ داد. لطفا با پشتیبانی تماس بگیرید." #: ecommerce/static/js/pages/basket_page.js:101 msgid "This field is required" -msgstr "" +msgstr "این قسمت الزامی است" #: ecommerce/static/js/pages/basket_page.js:145 msgid "Invalid card number" -msgstr "" +msgstr "شماره کارت معتبر نیست" #: ecommerce/static/js/pages/basket_page.js:147 msgid "Unsupported card type" -msgstr "" +msgstr "نوع کارت پشتیبانی نمی‌شود" #: ecommerce/static/js/pages/basket_page.js:149 msgid "Invalid security number" -msgstr "" +msgstr "شماره امنیتی معتبر نیست" #: ecommerce/static/js/pages/basket_page.js:154 msgid "Invalid month" -msgstr "" +msgstr "ماه معتبر نیست" #: ecommerce/static/js/pages/basket_page.js:156 msgid "Invalid year" -msgstr "" +msgstr "سال معتبر نیست" #: ecommerce/static/js/pages/basket_page.js:158 msgid "Card expired" -msgstr "" +msgstr "کارت منقضی شد" #: ecommerce/static/js/pages/basket_page.js:474 msgid "" -msgstr "" +msgstr "" #: ecommerce/static/js/pages/basket_page.js:475 msgid "State/Province (required)" -msgstr "" +msgstr "ایالت/استان (الزامی)" #: ecommerce/static/js/pages/coupon_create_page.js:12 #: ecommerce/static/js/pages/enterprise_coupon_create_page.js:12 @@ -254,43 +254,43 @@ msgstr "دوره‌های آموزشی" #: ecommerce/static/js/pages/enterprise_coupon_list_page.js:10 msgid "Enterprise Coupon Codes" -msgstr "" +msgstr "کد کوپن‌های سازمانی" #: ecommerce/static/js/pages/offer_page.js:14 msgid "Redeem" -msgstr "" +msgstr "بازخرید" #: ecommerce/static/js/pages/receipt_page.js:21 msgid "" "Caution! Using the back button on this page may cause you to be charged " "again." -msgstr "" +msgstr "احتیاط! استفاده از دکمه برگشت در این صفحه ممکن است باعث شارژ مجدد شما شود." #. Translators: Do not translate "Apple Pay". #: ecommerce/static/js/payment_processors/cybersource.js:225 msgid "" "Apple Pay is not available at this time. Please try another payment method." -msgstr "" +msgstr "اکنون Apple Pay در دسترس نیست. لطفاً روش پرداخت دیگری را امتحان کنید." #: ecommerce/static/js/payment_processors/cybersource.js:255 msgid "" "An error occurred while processing your payment. You have NOT been charged. " "Please try again, or select another payment method." -msgstr "" +msgstr "هنگام پردازش پرداخت شما خطایی روی داد. هزینه‌ای دریافت نشده است. لطفاً دوباره امتحان کنید یا روش پرداخت دیگری برگزینید." #: ecommerce/static/js/payment_processors/stripe.js:71 msgid "" "An error occurred while attempting to process your payment. You have not " "been charged. Please check your payment details, and try again." -msgstr "" +msgstr "هنگام تلاش برای پردازش پرداخت شما خطایی روی داد. هزینه‌ای از حساب شما کسر نشده است. لطفاً جزئیات پرداخت خود را بررسی کرده و دوباره امتحان کنید." #: ecommerce/static/js/payment_processors/stripe.js:110 msgid "An error occurred while processing your payment. Please try again." -msgstr "" +msgstr "هنگام پردازش پرداخت شما خطایی روی داد. لطفا دوباره تلاش کنید." #: ecommerce/static/js/utils/utils.js:184 msgid "Trailing comma not allowed." -msgstr "" +msgstr "کامای آخر مجاز نیست." #: ecommerce/static/js/views/coupon_detail_view.js:108 #: ecommerce/static/js/views/coupon_form_view.js:62 @@ -318,11 +318,11 @@ msgstr "رمز ثبت‌نام" msgid "Discount Code" msgstr "رمز تخفیف" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "ذخیره تغییرات" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "ایجاد کوپن" @@ -334,20 +334,20 @@ msgstr "نام" #: ecommerce/static/js/views/coupon_list_view.js:42 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:31 msgid "Created" -msgstr "" +msgstr "ایجادشده" #: ecommerce/static/js/views/coupon_list_view.js:49 msgid "Custom Code" -msgstr "" +msgstr "کدسفارشی" #: ecommerce/static/js/views/coupon_list_view.js:55 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:44 msgid "Client" -msgstr "" +msgstr "مشتری" #: ecommerce/static/js/views/coupon_list_view.js:61 msgid "Category" -msgstr "" +msgstr "دسته‌بندی" #: ecommerce/static/js/views/coupon_list_view.js:67 #: ecommerce/static/js/views/enterprise_coupon_list_view.js:62 @@ -395,17 +395,17 @@ msgstr "مسیر حسابرسی رایگان. بدون گواهی" #: ecommerce/static/js/views/course_form_view.js:60 msgid "Verified and Audit" -msgstr "" +msgstr "تایید و حسابرسی" #: ecommerce/static/js/views/course_form_view.js:61 #: ecommerce/static/js/views/course_form_view.js:67 msgid "" "Paid certificate track with initial verification and Verified Certificate." -msgstr "" +msgstr "مسیر گواهی پولی با تأیید اولیه و گواهی تأییدشده." #: ecommerce/static/js/views/course_form_view.js:62 msgid "Also includes the free audit track." -msgstr "" +msgstr "همچنین شامل مسیر بررسی رایگان است." #: ecommerce/static/js/views/course_form_view.js:66 msgid "Verified Only" @@ -419,13 +419,13 @@ msgstr "تحصیلات حرفه‌ای" msgid "" "Paid certificate track with initial verification and Professional Education " "Certificate" -msgstr "" +msgstr "مسیر گواهی پرداختی با تأیید اولیه و گواهی آموزش حرفه‌ای" #: ecommerce/static/js/views/course_form_view.js:78 msgid "" "Paid certificate track with initial verification and Verified Certificate, " "and option to purchase credit" -msgstr "" +msgstr "مسیر گواهی پرداختی با تأیید اولیه و گواهی تأییدشده و گزینه خرید اعتبار" #. Translators: _START_, _END_, and _TOTAL_ are placeholders. Do NOT translate #. them. @@ -453,7 +453,7 @@ msgstr "آخرین ویرایش" #: ecommerce/static/js/views/dynamic_catalog_view.js:74 msgid "Seat title" -msgstr "" +msgstr "عنوان جایگاه" #: ecommerce/static/js/views/dynamic_catalog_view.js:78 msgid "Seat type" @@ -462,23 +462,23 @@ msgstr "نوع جایگاه" #: ecommerce/static/js/views/enterprise_coupon_detail_view.js:28 #: ecommerce/static/js/views/enterprise_coupon_form_view.js:42 msgid "Can be used multiple times by one customer" -msgstr "" +msgstr "امکان استفاده چندین باره از آن برای یک مشتری فراهم است" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" -msgstr "" +msgstr "ایجاد و افزودن موارد بیشتر" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:38 msgid "Status" -msgstr "" +msgstr "وضعیت" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:50 msgid "Enterprise Customer" -msgstr "" +msgstr "مشتری سازمانی" #: ecommerce/static/js/views/enterprise_coupon_list_view.js:56 msgid "Enterprise Customer Catalog" -msgstr "" +msgstr "فهرست مشتریان سازمانی" #: ecommerce/static/js/views/form_view.js:71 msgid "A course with the specified ID already exists." @@ -495,7 +495,7 @@ msgstr "در حال ذخیره..." #: ecommerce/static/js/views/form_view.js:136 msgid "Please complete all required fields." -msgstr "" +msgstr "لطفا همه قسمت‌های الزامی را تکمیل کنید." #: ecommerce/static/js/views/form_view.js:161 msgid "An error occurred while saving the data." @@ -511,11 +511,11 @@ msgstr "بارگیری تاریخچه صفحه" #: ecommerce/static/js/views/offer_view.js:212 msgid "Load the records for the next page" -msgstr "" +msgstr "سوابق را برای صفحه بعد بارگیری کنید" #: ecommerce/static/js/views/offer_view.js:220 msgid "Load the records for the previous page" -msgstr "" +msgstr "سوابق را برای صفحه قبل بارگیری کنید" #: ecommerce/static/js/views/provider_selection_view.js:33 msgid "Select" diff --git a/ecommerce/conf/locale/ff/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ff/LC_MESSAGES/django.mo index 9ddd02daa68..995e637ab02 100644 Binary files a/ecommerce/conf/locale/ff/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ff/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ff/LC_MESSAGES/django.po b/ecommerce/conf/locale/ff/LC_MESSAGES/django.po index 239182d2712..018a34e1d73 100644 --- a/ecommerce/conf/locale/ff/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ff/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Fulah (http://www.transifex.com/open-edx/edx-platform/language/ff/)\n" +"Language-Team: Fulah (http://app.transifex.com/open-edx/edx-platform/language/ff/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ff/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ff/LC_MESSAGES/djangojs.mo index ce46b8f9cf2..f024397827b 100644 Binary files a/ecommerce/conf/locale/ff/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ff/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ff/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ff/LC_MESSAGES/djangojs.po index ad46495aa3f..e9a199ef05b 100644 --- a/ecommerce/conf/locale/ff/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ff/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Fulah (http://www.transifex.com/open-edx/edx-platform/language/ff/)\n" +"Language-Team: Fulah (http://app.transifex.com/open-edx/edx-platform/language/ff/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ff_SN/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ff_SN/LC_MESSAGES/django.mo index adbb30a6c16..c390be20eb8 100644 Binary files a/ecommerce/conf/locale/ff_SN/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ff_SN/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ff_SN/LC_MESSAGES/django.po b/ecommerce/conf/locale/ff_SN/LC_MESSAGES/django.po index 31c28158497..f3ada7b1628 100644 --- a/ecommerce/conf/locale/ff_SN/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ff_SN/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Fulah (Senegal) (http://www.transifex.com/open-edx/edx-platform/language/ff_SN/)\n" +"Language-Team: Fulah (Senegal) (http://app.transifex.com/open-edx/edx-platform/language/ff_SN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ff_SN/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ff_SN/LC_MESSAGES/djangojs.mo index 0826e88ef53..d3b9c4b99e2 100644 Binary files a/ecommerce/conf/locale/ff_SN/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ff_SN/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ff_SN/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ff_SN/LC_MESSAGES/djangojs.po index d2600cda481..772d5ccd555 100644 --- a/ecommerce/conf/locale/ff_SN/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ff_SN/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Fulah (Senegal) (http://www.transifex.com/open-edx/edx-platform/language/ff_SN/)\n" +"Language-Team: Fulah (Senegal) (http://app.transifex.com/open-edx/edx-platform/language/ff_SN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/fi/LC_MESSAGES/django.mo b/ecommerce/conf/locale/fi/LC_MESSAGES/django.mo new file mode 100644 index 00000000000..d3501bbd5b2 Binary files /dev/null and b/ecommerce/conf/locale/fi/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/fi/LC_MESSAGES/django.po b/ecommerce/conf/locale/fi/LC_MESSAGES/django.po new file mode 100644 index 00000000000..6b8d2943b01 --- /dev/null +++ b/ecommerce/conf/locale/fi/LC_MESSAGES/django.po @@ -0,0 +1,4059 @@ +# #-#-#-#-# django.po (ecommerce) #-#-#-#-# +# edX translation file +# Copyright (C) 2018 edX +# This file is distributed under the GNU AFFERO GENERAL PUBLIC LICENSE. +# +# Translators: +# Translators: +# Translators: +# Translators: +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: edx-platform\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" +"PO-Revision-Date: 2015-06-18 01:39+0000\n" +"Last-Translator: edx_transifex_bot \n" +"Language-Team: Finnish (http://app.transifex.com/open-edx/edx-platform/language/fi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fi\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ecommerce/core/admin.py:25 +msgid "Personal info" +msgstr "" + +#: ecommerce/core/admin.py:26 +msgid "Permissions" +msgstr "" + +#: ecommerce/core/admin.py:28 +msgid "Important dates" +msgstr "" + +#. Translators: "Waffle" is the name of a third-party library. It should not +#. be translated +#: ecommerce/core/admin.py:35 +#, python-brace-format +msgid "" +"User administration has been disabled due to the load on the database. This " +"functionality can be restored by activating the {switch_name} Waffle switch." +" Be careful when re-activating this switch!" +msgstr "" + +#: ecommerce/core/models.py:41 +msgid "LMS base url for custom site/microsite" +msgstr "" + +#: ecommerce/core/models.py:42 +msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" +msgstr "" + +#: ecommerce/core/models.py:47 +msgid "Path to custom site theme" +msgstr "" + +#: ecommerce/core/models.py:54 +msgid "Payment processors" +msgstr "" + +#: ecommerce/core/models.py:55 +msgid "Comma-separated list of processor names: 'cybersource,paypal'" +msgstr "" + +#: ecommerce/core/models.py:61 +msgid "Client-side payment processor" +msgstr "" + +#: ecommerce/core/models.py:62 +msgid "Processor that will be used for client-side payments" +msgstr "" + +#: ecommerce/core/models.py:68 +msgid "OAuth settings" +msgstr "" + +#: ecommerce/core/models.py:69 +msgid "JSON string containing OAuth backend settings." +msgstr "" + +#: ecommerce/core/models.py:75 +msgid "Segment key" +msgstr "" + +#: ecommerce/core/models.py:76 +msgid "Segment write/API key." +msgstr "" + +#: ecommerce/core/models.py:82 +msgid "From email" +msgstr "" + +#: ecommerce/core/models.py:83 +msgid "Address from which emails are sent." +msgstr "" + +#: ecommerce/core/models.py:89 +msgid "Enable enrollment codes" +msgstr "" + +#: ecommerce/core/models.py:90 +msgid "Enable the creation of enrollment codes." +msgstr "" + +#: ecommerce/core/models.py:95 +msgid "Payment support email" +msgstr "" + +#: ecommerce/core/models.py:96 +msgid "Contact email for payment support issues." +msgstr "" + +#: ecommerce/core/models.py:102 +msgid "Payment support url" +msgstr "" + +#: ecommerce/core/models.py:103 +msgid "URL for payment support issues." +msgstr "" + +#: ecommerce/core/models.py:108 +msgid "UTM Cookie Name" +msgstr "" + +#: ecommerce/core/models.py:109 +msgid "Name of cookie storing UTM data." +msgstr "" + +#: ecommerce/core/models.py:115 +msgid "Affiliate Cookie Name" +msgstr "" + +#: ecommerce/core/models.py:116 +msgid "Name of cookie storing affiliate data." +msgstr "" + +#: ecommerce/core/models.py:122 +msgid "Send refund email notification" +msgstr "" + +#: ecommerce/core/models.py:127 +msgid "Enable SDN check" +msgstr "" + +#: ecommerce/core/models.py:128 +msgid "Enable SDN check at checkout." +msgstr "" + +#: ecommerce/core/models.py:132 +msgid "[Deprecated] US Treasury SDN API URL" +msgstr "" + +#: ecommerce/core/models.py:137 +msgid "[Deprecated] US Treasury SDN API key" +msgstr "" + +#: ecommerce/core/models.py:142 +msgid "SDN lists" +msgstr "" + +#: ecommerce/core/models.py:143 +msgid "A comma-separated list of Treasury OFAC lists to check against." +msgstr "" + +#: ecommerce/core/models.py:148 +msgid "Require Account Activation" +msgstr "" + +#: ecommerce/core/models.py:149 +msgid "" +"Require users to activate their account before allowing them to redeem a " +"coupon." +msgstr "" + +#: ecommerce/core/models.py:153 +msgid "Optimizely snippet source URL" +msgstr "" + +#: ecommerce/core/models.py:154 +msgid "This script will be loaded on every page." +msgstr "" + +#: ecommerce/core/models.py:159 +msgid "Base Cookie Domain" +msgstr "" + +#: ecommerce/core/models.py:160 +msgid "Base cookie domain used to share cookies across services." +msgstr "" + +#: ecommerce/core/models.py:166 +msgid "Enable embargo check" +msgstr "" + +#: ecommerce/core/models.py:167 +msgid "Enable embargo check at checkout." +msgstr "" + +#: ecommerce/core/models.py:171 +msgid "Discovery API URL" +msgstr "" + +#. Translators: Do not translate "Apple Pay" +#: ecommerce/core/models.py:177 +msgid "Enable Apple Pay" +msgstr "" + +#: ecommerce/core/models.py:181 +msgid "Enable Partial Program Offer" +msgstr "" + +#: ecommerce/core/models.py:182 +msgid "" +"Enable the application of program offers to remaining unenrolled or " +"unverified courses" +msgstr "" + +#: ecommerce/core/models.py:187 +msgid "Hubspot Portal Secret Key" +msgstr "" + +#: ecommerce/core/models.py:188 +msgid "Secret key for Hubspot portal authentication" +msgstr "" + +#: ecommerce/core/models.py:193 +msgid "Enable Microfrontend for Basket Page" +msgstr "" + +#: ecommerce/core/models.py:194 +msgid "" +"Use the microfrontend implementation of the basket page instead of the " +"server-side template" +msgstr "" + +#: ecommerce/core/models.py:199 +msgid "Payment Microfrontend URL" +msgstr "" + +#: ecommerce/core/models.py:200 +msgid "" +"URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " +"Page is set)" +msgstr "" + +#: ecommerce/core/models.py:446 +msgid "last name" +msgstr "" + +#: ecommerce/core/models.py:449 +msgid "first name" +msgstr "" + +#: ecommerce/core/models.py:450 +msgid "Full Name" +msgstr "" + +#: ecommerce/core/models.py:456 +msgid "LMS user id" +msgstr "" + +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:10 +msgid "Name" +msgstr "" + +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 +msgid "EnterpriseCustomer UUID" +msgstr "" + +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 +msgid "UUID for an EnterpriseCustomer from the Enterprise Service." +msgstr "" + +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 +msgid "Coupon does not exist." +msgstr "" + +#: ecommerce/coupons/views.py:81 +msgid "This coupon code is not yet valid." +msgstr "" + +#: ecommerce/coupons/views.py:83 +msgid "This coupon code has expired." +msgstr "" + +#: ecommerce/coupons/views.py:95 +#, python-brace-format +msgid "Product [{product}] not available for purchase." +msgstr "" + +#: ecommerce/coupons/views.py:100 +msgid "This coupon code is no longer available." +msgstr "" + +#: ecommerce/coupons/views.py:120 +msgid "This coupon code is invalid." +msgstr "" + +#: ecommerce/coupons/views.py:127 +msgid "The voucher is not applicable to your current basket." +msgstr "" + +#: ecommerce/coupons/views.py:137 +msgid "Welcome to edX" +msgstr "" + +#: ecommerce/coupons/views.py:138 +msgid "" +"Please choose from the courses selected by your organization to start " +"learning." +msgstr "" + +#: ecommerce/coupons/views.py:168 +msgid "Code not provided." +msgstr "" + +#: ecommerce/coupons/views.py:170 +msgid "SKU not provided." +msgstr "" + +#: ecommerce/coupons/views.py:181 +msgid "The product does not exist." +msgstr "" + +#: ecommerce/coupons/views.py:195 +msgid "You are not eligible to use this coupon." +msgstr "" + +#: ecommerce/coupons/views.py:210 +msgid "Couldn't find a matching Enterprise Customer for this coupon." +msgstr "" + +#: ecommerce/coupons/views.py:218 +msgid "" +"This coupon is not valid for purchasing a program. Try using this on an " +"individual course in the program. If you need assistance, contact edX " +"support." +msgstr "" + +#: ecommerce/coupons/views.py:245 +msgid "Invalid data sharing consent token provided." +msgstr "" + +#: ecommerce/coupons/views.py:265 +#, python-brace-format +msgid "You have already purchased {course} seat." +msgstr "" + +#: ecommerce/coupons/views.py:289 +#, python-brace-format +msgid "A discount has been applied, courtesy of {enterprise_customer_name}." +msgstr "" + +#: ecommerce/coupons/views.py:299 +msgid "This coupon code is not valid for this course. Try a different course." +msgstr "" + +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 +#: ecommerce/extensions/payment/models.py:68 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:14 +msgid "Site" +msgstr "" + +#: ecommerce/courses/models.py:40 +msgid "" +"Last date/time on which verification for this product can be submitted." +msgstr "" + +#: ecommerce/courses/publishers.py:62 +#, python-brace-format +msgid "Failed to publish commerce data for {course_id} to LMS." +msgstr "" + +#: ecommerce/courses/utils.py:138 +msgid "Audit" +msgstr "" + +#: ecommerce/courses/utils.py:139 +msgid "Credit" +msgstr "" + +#: ecommerce/courses/utils.py:140 +msgid "Honor" +msgstr "" + +#: ecommerce/courses/utils.py:141 +msgid "Professional" +msgstr "" + +#: ecommerce/courses/utils.py:142 +msgid "Verified" +msgstr "" + +#: ecommerce/courses/utils.py:143 +msgid "Executive Education" +msgstr "" + +#: ecommerce/courses/utils.py:144 +msgid "Paid Executive Education" +msgstr "" + +#: ecommerce/courses/utils.py:145 +msgid "Unpaid Executive Education" +msgstr "" + +#: ecommerce/courses/utils.py:146 +msgid "Paid Bootcamp" +msgstr "" + +#: ecommerce/courses/utils.py:147 +msgid "Unpaid Bootcamp" +msgstr "" + +#: ecommerce/credit/views.py:40 +msgid "" +"An error has occurred. We could not confirm that you are eligible for course" +" credit. Try the transaction again." +msgstr "" + +#: ecommerce/credit/views.py:61 +#, python-brace-format +msgid "" +"Credit is not currently available for \"{course_name}\". If you are " +"currently enrolled in the course, please try again after all grading is " +"complete. If you need additional assistance, please contact the {site_name} " +"Support Team." +msgstr "" + +#: ecommerce/credit/views.py:75 +msgid "" +"An error has occurred. We could not confirm that the institution you " +"selected offers this course credit. Try the transaction again." +msgstr "" + +#: ecommerce/enterprise/benefits.py:24 +#, python-format +msgid "%d%% enterprise discount" +msgstr "" + +#: ecommerce/enterprise/benefits.py:36 +#, python-brace-format +msgid "{value} fixed-price enterprise discount" +msgstr "" + +#: ecommerce/enterprise/benefits.py:45 +#: ecommerce/extensions/payment/models.py:86 ecommerce/invoice/models.py:25 +#: ecommerce/programs/constants.py:15 +msgid "Percentage" +msgstr "" + +#: ecommerce/enterprise/benefits.py:46 +#: ecommerce/extensions/payment/models.py:87 +#: ecommerce/programs/constants.py:16 +msgid "Absolute" +msgstr "" + +#: ecommerce/enterprise/conditions.py:216 +#, python-brace-format +msgid "" +"This coupon has been made available through {new_enterprise}. To redeem this" +" coupon, you must first logout. When you log back in, please select " +"{new_enterprise} as your enterprise and try again." +msgstr "" + +#: ecommerce/enterprise/conditions.py:370 +msgid "" +"This code is not valid with your email. Please login with the correct email " +"assigned to the code or contact your Learning Manager for additional " +"questions." +msgstr "" + +#: ecommerce/enterprise/forms.py:38 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 +msgid "Enterprise Customer UUID" +msgstr "" + +#: ecommerce/enterprise/forms.py:39 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 +msgid "Enterprise Customer Catalog UUID" +msgstr "" + +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 +msgid "Discount Type" +msgstr "" + +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 +msgid "Discount Value" +msgstr "" + +#: ecommerce/enterprise/forms.py:45 +msgid "Contract Discount Type" +msgstr "" + +#: ecommerce/enterprise/forms.py:48 +msgid "Contract Discount" +msgstr "" + +#: ecommerce/enterprise/forms.py:51 +msgid "Prepaid Invoice Amount" +msgstr "" + +#: ecommerce/enterprise/forms.py:53 +msgid "Salesforce Opportunity ID" +msgstr "" + +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 +msgid "Emails Addresses" +msgstr "" + +#: ecommerce/enterprise/forms.py:59 +msgid "Comma separated emails which will receive the offer usage alerts" +msgstr "" + +#: ecommerce/enterprise/forms.py:64 +msgid "Frequency for offer usage emails" +msgstr "" + +#: ecommerce/enterprise/forms.py:79 +msgid "The maximum number of enrollments that can redeem this offer." +msgstr "" + +#: ecommerce/enterprise/forms.py:80 +msgid "The maximum USD dollar amount that can be redeemed by this offer." +msgstr "" + +#: ecommerce/enterprise/forms.py:81 +msgid "" +"The maximum number of enrollments, by a user, that can redeem this offer." +msgstr "" + +#: ecommerce/enterprise/forms.py:82 +msgid "" +"The maximum USD dollar amount that can be redeemed using this offer by a " +"user." +msgstr "" + +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 +msgid "Start Date" +msgstr "" + +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 +msgid "End Date" +msgstr "" + +#: ecommerce/enterprise/forms.py:87 +msgid "Enrollment Limit" +msgstr "" + +#: ecommerce/enterprise/forms.py:88 +msgid "Bookings Limit" +msgstr "" + +#: ecommerce/enterprise/forms.py:89 +msgid "Per User Enrollment Limit" +msgstr "" + +#: ecommerce/enterprise/forms.py:90 +msgid "Per User Bookings Limit" +msgstr "" + +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 +#, python-brace-format +msgid "" +"Ensure new value must be greater than or equal to " +"consumed({offer_enrollments}) value." +msgstr "" + +#: ecommerce/enterprise/forms.py:166 +msgid "" +"Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " +"006." +msgstr "" + +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 +msgid "Ensure this value is greater than or equal to 0." +msgstr "" + +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 +#, python-brace-format +msgid "" +"Ensure new value must be greater than or equal to " +"consumed({consumed_discount:.2f}) value." +msgstr "" + +#: ecommerce/enterprise/forms.py:265 +#, python-brace-format +msgid "Given email address {email} is not a valid email." +msgstr "" + +#: ecommerce/enterprise/forms.py:290 +msgid "An offer already exists for this Enterprise & Catalog combination." +msgstr "" + +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 +#: ecommerce/programs/forms.py:73 +msgid "Percentage discounts cannot be greater than 100%." +msgstr "" + +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 +msgid "A start date must be specified when specifying an end date." +msgstr "" + +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 +msgid "The start date must occur before the end date." +msgstr "" + +#: ecommerce/enterprise/forms.py:307 +msgid "More than 2 digits after the decimal not allowed for absolute value." +msgstr "" + +#: ecommerce/enterprise/forms.py:312 +msgid "This field is required when contract discount type is absolute." +msgstr "" + +#: ecommerce/enterprise/forms.py:337 +msgid "Discount of type {} provided by {} for {}." +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterprise_coupon_app.html:5 +msgid "Enterprise Coupon Codes" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:9 +#, python-format +msgid "Edit Enterprise Offer: %(enterprise_customer_name)s" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:14 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:47 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:60 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:20 +msgid "Create Enterprise Offer" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:30 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:6 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:17 +#: ecommerce/templates/edx/partials/_administration_menu.html:14 +msgid "Enterprise Offers" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:34 +#: ecommerce/programs/templates/programs/programoffer_form.html:34 +#: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:11 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:268 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:56 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:69 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:74 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:85 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:9 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:19 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:25 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:30 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:695 +msgid "Edit" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:36 +#: ecommerce/programs/templates/programs/programoffer_form.html:36 +msgid "Create" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:45 +msgid "Edit Enterprise Offer" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:58 +#: ecommerce/programs/templates/programs/programoffer_form.html:58 +msgid "Save Changes" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:62 +#: ecommerce/programs/templates/programs/programoffer_form.html:62 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:323 +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:20 +msgid "Cancel" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:76 +#, python-format +msgid "" +"\n" +" %(platform_name)s Enterprise Offer Administration Tool\n" +" " +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:26 +msgid "Current enterprise offers" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:29 +msgid "Enterprise Customer Name" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:32 +#: ecommerce/programs/templates/programs/programoffer_list.html:31 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:629 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:681 +msgid "Type" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:33 +#: ecommerce/programs/templates/programs/programoffer_list.html:32 +msgid "Value" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:34 +#: ecommerce/programs/templates/programs/programoffer_list.html:33 +msgid "Start" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:35 +#: ecommerce/programs/templates/programs/programoffer_list.html:34 +msgid "End" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:64 +#, python-format +msgid "" +"\n" +" %(platform_name)s Enterprise Offer Administration Tool\n" +" " +msgstr "" + +#: ecommerce/enterprise/utils.py:239 +#, python-brace-format +msgid "SKU {sku} does not exist." +msgstr "" + +#: ecommerce/enterprise/utils.py:248 +#, python-brace-format +msgid "There is no Enterprise Customer associated with SKU {sku}." +msgstr "" + +#: ecommerce/enterprise/utils.py:256 +#, python-brace-format +msgid "" +"If you have concerns about sharing your data, please contact your " +"administrator at {enterprise}." +msgstr "" + +#: ecommerce/enterprise/utils.py:259 +#, python-brace-format +msgid "" +"If you have concerns about sharing your data, please contact your " +"administrator at {enterprise} at {contact_info}." +msgstr "" + +#: ecommerce/enterprise/utils.py:265 +#, python-brace-format +msgid "Enrollment in {course_name} was not complete." +msgstr "" + +#: ecommerce/enterprise/views.py:39 +msgid "Enterprise offer updated!" +msgstr "" + +#: ecommerce/enterprise/views.py:62 +msgid "Enterprise offer created!" +msgstr "" + +#: ecommerce/extensions/api/exceptions.py:9 +msgid "You can't check out with an empty basket." +msgstr "" + +#: ecommerce/extensions/api/exceptions.py:12 +msgid "" +"We couldn't locate the identification code necessary to find one of your " +"products." +msgstr "" + +#: ecommerce/extensions/api/exceptions.py:15 +msgid "We couldn't find one of the products you're looking for." +msgstr "" + +#: ecommerce/extensions/api/exceptions.py:18 +msgid "One of the products you're trying to order is unavailable." +msgstr "" + +#: ecommerce/extensions/api/exceptions.py:21 +msgid "" +"We couldn't find enough information about you to perform the calculation." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:259 +msgid "EXPIRED" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:261 +msgid "INACTIVE" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:262 +msgid "ACTIVE" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:703 +msgid "Products must have a certificate type." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 +msgid "Products must have a price." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:713 +msgid "You need to provide a course UUID to create Course Entitlements." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:747 +msgid "Products must indicate whether ID verification is required." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:818 +#, python-brace-format +msgid "Invalid product class [{product_class}] requested." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:850 +#, python-brace-format +msgid "" +"Course [{course_id}] was not published to LMS because the switch " +"[publish_course_modes_to_lms] is disabled. To avoid ghost SKUs, data has not" +" been saved." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:1548 +msgid "Enrollment code" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:1549 +msgid "Discount code" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:2046 +msgid "Invalid order number or order {} does not exists." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:2101 +msgid "New coupon voucher assignment Failure. Error: {}" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:2119 +msgid "" +"Your order {} can not be refunded as '{}' coupon are not supported to " +"refund." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:2150 +msgid "Could note create new voucher for the order: {}" +msgstr "" + +#: ecommerce/extensions/api/v2/views/baskets.py:445 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 +msgid "No SKUs provided." +msgstr "" + +#: ecommerce/extensions/api/v2/views/baskets.py:456 +#: ecommerce/extensions/basket/views.py:467 +#, python-brace-format +msgid "Products with SKU(s) [{skus}] do not exist." +msgstr "" + +#: ecommerce/extensions/api/v2/views/baskets.py:467 +msgid "Provide username or is_anonymous query param, but not both" +msgstr "" + +#: ecommerce/extensions/api/v2/views/products.py:54 +#, python-brace-format +msgid "Product API only supports {http_method} for {product_class} products." +msgstr "" + +#: ecommerce/extensions/api/v2/views/products.py:69 +#, python-brace-format +msgid "Missing or bad value for: [{name}]." +msgstr "" + +#: ecommerce/extensions/basket/models.py:119 +#, python-brace-format +msgid "{id} - {status} basket (owner: {owner}, lines: {num_lines})" +msgstr "" + +#: ecommerce/extensions/basket/models.py:142 +#: ecommerce/extensions/payment/models.py:28 +#: ecommerce/templates/oscar/basket/basket.html:9 +msgid "Basket" +msgstr "" + +#: ecommerce/extensions/basket/models.py:144 +msgid "Attribute Type" +msgstr "" + +#: ecommerce/extensions/basket/models.py:146 +msgid "Text Attribute" +msgstr "" + +#: ecommerce/extensions/basket/utils.py:155 +msgid "" +"Due to export controls, we cannot allow you to access this course at this " +"time." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:245 +msgid "Click here to just purchase an enrollment for yourself" +msgstr "" + +#: ecommerce/extensions/basket/utils.py:248 +msgid "Click here to purchase multiple seats in this course" +msgstr "" + +#: ecommerce/extensions/basket/utils.py:498 +#, python-brace-format +msgid "Coupon code '{code}' has expired." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:502 +#, python-brace-format +msgid "Coupon code '{code}' is not active." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:508 +#, python-brace-format +msgid "Coupon code '{code}' is not available. {msg}" +msgstr "" + +#: ecommerce/extensions/basket/utils.py:514 +#, python-brace-format +msgid "Coupon code '{code}' is not valid for this basket." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:527 +#, python-brace-format +msgid "" +"Coupon code '{code}' is not valid for this basket for a bundled purchase." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:582 +#, python-brace-format +msgid "Coupon code '{code}' added to basket." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:585 +#, python-brace-format +msgid "Basket does not qualify for coupon code {code}." +msgstr "" + +#: ecommerce/extensions/basket/views.py:206 +#, python-brace-format +msgid "Could not apply the code '{code}'; it requires data sharing consent." +msgstr "" + +#: ecommerce/extensions/basket/views.py:297 +msgid "" +"After you complete your order you will be able to select course dates from " +"your dashboard." +msgstr "" + +#: ecommerce/extensions/basket/views.py:312 +msgid "" +"After you complete your order you will be automatically enrolled in the " +"verified track of the course." +msgstr "" + +#: ecommerce/extensions/basket/views.py:316 +msgid "After you complete your order you will receive credit for your course." +msgstr "" + +#: ecommerce/extensions/basket/views.py:319 +msgid "" +"After you complete your order you will be automatically enrolled in the " +"course." +msgstr "" + +#: ecommerce/extensions/basket/views.py:323 +#, python-brace-format +msgid "" +"{paragraph_start}By purchasing, you and your organization agree to the " +"following terms:{paragraph_end} {ul_start} {li_start}Each code is valid for " +"the one course covered and can be used only one time.{li_end} {li_start}You " +"are responsible for distributing codes to your learners in your " +"organization.{li_end} {li_start}Each code will expire in one year from date " +"of purchase or, if earlier, once the course is closed.{li_end} {li_start}If " +"a course is not designated as self-paced, you should confirm that a course " +"run is available before expiration. {li_end} {li_start}You may not resell " +"codes to third parties.{li_end} {li_start}All edX for Business Sales are " +"final and not eligible for refunds.{li_end}{ul_end} {paragraph_start}You " +"will receive an email at {user_email} with your enrollment code(s). " +"{paragraph_end}" +msgstr "" + +#: ecommerce/extensions/basket/views.py:361 +#, python-brace-format +msgid "" +"{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " +"you are purchasing a single code for someone else, please continue with " +"checkout. However, if you are the learner {link_start}go back{link_end} to " +"enroll directly.{paragraph_end}" +msgstr "" + +#: ecommerce/extensions/basket/views.py:439 +msgid "You have already purchased these products" +msgstr "" + +#: ecommerce/extensions/basket/views.py:484 +msgid "No product is available to buy." +msgstr "" + +#: ecommerce/extensions/basket/views.py:902 +msgid "quantity successfully updated" +msgstr "" + +#: ecommerce/extensions/basket/views.py:921 +msgid "" +"Your basket couldn't be updated. Please correct any validation errors below." +msgstr "" + +#: ecommerce/extensions/basket/views.py:975 +#, python-brace-format +msgid "You have already added coupon code '{code}' to your basket." +msgstr "" + +#: ecommerce/extensions/basket/views.py:1051 +#, python-brace-format +msgid "Coupon code '{code}' does not exist." +msgstr "" + +#: ecommerce/extensions/basket/views.py:1136 +#, python-format +msgid "No coupon found with id '%s'" +msgstr "" + +#: ecommerce/extensions/basket/views.py:1140 +#, python-format +msgid "Coupon code '%s' was removed from your basket." +msgstr "" + +#: ecommerce/extensions/catalogue/models.py:69 +msgid "Last date/time on which this product can be purchased." +msgstr "" + +#: ecommerce/extensions/dashboard/forms.py:9 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:48 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:72 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:52 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:59 +#: ecommerce/templates/oscar/dashboard/users/detail.html:40 +msgid "Username" +msgstr "" + +#: ecommerce/extensions/dashboard/forms.py:10 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:73 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:60 +#: ecommerce/templates/oscar/dashboard/users/detail.html:48 +msgid "Email" +msgstr "" + +#: ecommerce/extensions/dashboard/orders/views.py:74 +#, python-brace-format +msgid "" +"{link_start}Refund #{refund_id}{link_end} created! Click " +"{link_start}here{link_end} to view it." +msgstr "" + +#: ecommerce/extensions/dashboard/orders/views.py:78 +msgid "" +"A refund cannot be created for these lines. They may have already been " +"refunded." +msgstr "" + +#: ecommerce/extensions/dashboard/refunds/apps.py:13 +msgid "Refunds Dashboard" +msgstr "" + +#: ecommerce/extensions/dashboard/refunds/forms.py:15 +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:9 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:55 +msgid "Refund ID" +msgstr "" + +#: ecommerce/extensions/dashboard/refunds/forms.py:16 +#: ecommerce/extensions/refund/models.py:72 +#: ecommerce/extensions/refund/models.py:316 +#: ecommerce/extensions/voucher/utils.py:222 +#: ecommerce/extensions/voucher/utils.py:281 +#: ecommerce/extensions/voucher/utils.py:318 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:71 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:72 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:141 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:596 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:71 +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:13 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:75 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:111 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:58 +#: ecommerce/templates/oscar/dashboard/users/detail.html:142 +msgid "Status" +msgstr "" + +#: ecommerce/extensions/dashboard/users/views.py:48 +msgid "Failed to retrieve enrollment data." +msgstr "" + +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:32 +msgid "Day 3" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:33 +msgid "Day 10" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:34 +msgid "Day 19" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:40 +msgid "Assign" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:41 +msgid "Remind" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:42 +msgid "Revoke" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:77 +msgid "Automatic" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:78 +msgid "Manual" +msgstr "" + +#: ecommerce/extensions/offer/models.py:447 +msgid "Course Catalog ID from the Discovery Service." +msgstr "" + +#: ecommerce/extensions/offer/models.py:458 +msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." +msgstr "" + +#: ecommerce/extensions/offer/models.py:590 +msgid "EnterpriseCustomer Name" +msgstr "" + +#: ecommerce/extensions/offer/models.py:595 +msgid "EnterpriseCustomerCatalog UUID" +msgstr "" + +#: ecommerce/extensions/offer/models.py:600 +#: ecommerce/extensions/voucher/utils.py:53 +#: ecommerce/extensions/voucher/utils.py:190 +#: ecommerce/extensions/voucher/utils.py:270 +#: ecommerce/extensions/voucher/utils.py:326 +#: ecommerce/extensions/voucher/utils.py:335 +#: ecommerce/extensions/voucher/utils.py:341 ecommerce/programs/forms.py:22 +#: ecommerce/programs/templates/programs/programoffer_list.html:30 +msgid "Program UUID" +msgstr "" + +#: ecommerce/extensions/offer/models.py:613 +msgid "Email to user pending." +msgstr "" + +#: ecommerce/extensions/offer/models.py:614 +msgid "Code successfully assigned to user." +msgstr "" + +#: ecommerce/extensions/offer/models.py:615 +msgid "Code has been redeemed by user." +msgstr "" + +#: ecommerce/extensions/offer/models.py:616 +msgid "Email to user bounced." +msgstr "" + +#: ecommerce/extensions/offer/models.py:617 +msgid "Code has been revoked for this user." +msgstr "" + +#: ecommerce/extensions/offer/models.py:663 +msgid "Make a particular template version active." +msgstr "" + +#: ecommerce/extensions/offer/models.py:883 +msgid "Email has been sent." +msgstr "" + +#: ecommerce/extensions/offer/models.py:884 +msgid "This user should receive email" +msgstr "" + +#: ecommerce/extensions/offer/utils.py:97 +#, python-brace-format +msgid "{benefit_value}%" +msgstr "" + +#: ecommerce/extensions/offer/utils.py:100 +#, python-brace-format +msgid "${benefit_value}" +msgstr "" + +#. Translators: "Waffle" is the name of a third-party library. It should not +#. be translated +#: ecommerce/extensions/order/admin.py:35 +#, python-brace-format +msgid "" +"Order administration has been disabled due to the load on the database. This" +" functionality can be restored by activating the {switch_name} Waffle " +"switch. Be careful when re-activating this switch!" +msgstr "" + +#: ecommerce/extensions/order/benefits.py:22 +#, python-format +msgid "%d%% discount for manual course enrollment order" +msgstr "" + +#: ecommerce/extensions/order/models.py:39 +#: ecommerce/extensions/payment/models.py:26 +msgid "Payment Processor" +msgstr "" + +#: ecommerce/extensions/order/models.py:51 +msgid "" +"It expect that the order numbers stuck in fulfillment error state will be" +" provided in a txt file format one per line." +msgstr "" + +#: ecommerce/extensions/partner/admin.py:28 +msgid "Click 'Save and Continue Editing' to add stock records" +msgstr "" + +#: ecommerce/extensions/partner/models.py:22 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:193 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:74 +msgid "Partner" +msgstr "" + +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 +msgid "Partners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:8 +msgid "American Express" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 +msgid "Discover" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 +msgid "MasterCard" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 +msgid "Visa" +msgstr "" + +#: ecommerce/extensions/payment/exceptions.py:8 +msgid "We don't support the payment option you selected." +msgstr "" + +#: ecommerce/extensions/payment/forms.py:31 +msgid "Choose country" +msgstr "" + +#. Translators: This is a string added next to the name of the required +#. fields on the payment form. For example, the first name field is +#. required, so this would read "First name (required)". +#: ecommerce/extensions/payment/forms.py:105 +#, python-brace-format +msgid "{label} (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:111 +msgid "Organization (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:124 +msgid "" +"I am purchasing on behalf of my employer or other professional organization" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:141 +#: ecommerce/extensions/payment/forms.py:218 +#: ecommerce/extensions/payment/views/__init__.py:87 +msgid "" +"There was a problem retrieving your basket. Refresh the page to try again." +msgstr "" + +#: ecommerce/extensions/payment/forms.py:144 +msgid "First Name (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:145 +msgid "Last Name (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:146 +msgid "Address (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:147 +msgid "Suite/Apartment Number" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:148 +msgid "City (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:151 +msgid "State/Province" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:152 +msgid "Zip/Postal Code" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:153 +msgid "Country (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:180 +#: ecommerce/extensions/payment/forms.py:182 +#: ecommerce/extensions/payment/forms.py:193 +msgid "This field is required." +msgstr "" + +#: ecommerce/extensions/payment/forms.py:199 +msgid "" +"Postal codes for the U.S. and Canada are limited to nine (9) characters." +msgstr "" + +#: ecommerce/extensions/payment/models.py:27 +msgid "Transaction ID" +msgstr "" + +#: ecommerce/extensions/payment/models.py:36 +msgid "Payment Processor Response" +msgstr "" + +#: ecommerce/extensions/payment/models.py:37 +msgid "Payment Processor Responses" +msgstr "" + +#: ecommerce/extensions/payment/models.py:54 +msgid "" +"Number of times to retry failing Paypal client actions (e.g., payment " +"creation, payment execution)" +msgstr "" + +#: ecommerce/extensions/payment/models.py:112 +msgid "More than 10 digits before the decimal not allowed for fixed value." +msgstr "" + +#: ecommerce/extensions/payment/models.py:118 +msgid "More than 2 digits after the decimal not allowed for fixed value." +msgstr "" + +#: ecommerce/extensions/payment/models.py:126 +msgid "Percentage greater than 100 not allowed." +msgstr "" + +#. Translators: This is a string placed in the middle of a truncated string +#. to indicate that truncation has occurred. For example, if a title may only +#. be at most 11 characters long, "A Very Long Title" (17 characters) would be +#. truncated to "A Ve...itle". +#: ecommerce/extensions/payment/utils.py:77 +msgid "..." +msgstr "" + +#: ecommerce/extensions/payment/views/cybersource.py:368 +msgid "transaction declined" +msgstr "" + +#. Translators: "Waffle" is the name of a third-party library. It should not +#. be translated +#: ecommerce/extensions/refund/admin.py:36 +#, python-brace-format +msgid "" +"Refund administration has been disabled due to the load on the database. " +"This functionality can be restored by activating the {switch_name} Waffle " +"switch. Be careful when re-activating this switch!" +msgstr "" + +#: ecommerce/extensions/refund/models.py:67 +msgid "Order" +msgstr "" + +#: ecommerce/extensions/refund/models.py:68 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:680 +msgid "User" +msgstr "" + +#: ecommerce/extensions/refund/models.py:69 +msgid "Total Credit (excl. tax)" +msgstr "" + +#: ecommerce/extensions/refund/models.py:70 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:200 +msgid "Currency" +msgstr "" + +#: ecommerce/extensions/refund/models.py:308 +msgid "Refund" +msgstr "" + +#: ecommerce/extensions/refund/models.py:311 +msgid "Order Line" +msgstr "" + +#: ecommerce/extensions/refund/models.py:313 +msgid "Line Credit (excl. tax)" +msgstr "" + +#: ecommerce/extensions/refund/models.py:314 +#: ecommerce/templates/edx/checkout/receipt.html:103 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:50 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:108 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:133 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:164 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:138 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:108 +msgid "Quantity" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:40 +msgid "Can be used once by one customer" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:41 +msgid "Can be used multiple times by multiple customers" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:42 +msgid "Can only be used once per customer" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:43 +msgid "Can be used multiple times by one customer" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:45 +msgid "Usage" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:48 +msgid "Is Public Code Batch" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:49 +msgid "Should this code batch be public or private for assignment." +msgstr "" + +#: ecommerce/extensions/voucher/models.py:63 +msgid "This voucher is assigned to another user." +msgstr "" + +#: ecommerce/extensions/voucher/tests/test_utils.py:215 +#: ecommerce/extensions/voucher/utils.py:76 +#: ecommerce/extensions/voucher/utils.py:318 +msgid "Redeemed" +msgstr "" + +#: ecommerce/extensions/voucher/tests/test_utils.py:379 +#: ecommerce/extensions/voucher/tests/test_utils.py:384 +#: ecommerce/extensions/voucher/utils.py:95 +#: ecommerce/extensions/voucher/utils.py:161 +#: ecommerce/templates/edx/checkout/receipt.html:135 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 +msgid "Discount" +msgstr "" + +#: ecommerce/extensions/voucher/tests/test_utils.py:379 +#: ecommerce/extensions/voucher/tests/test_utils.py:384 +#: ecommerce/extensions/voucher/utils.py:95 +#: ecommerce/extensions/voucher/utils.py:161 +msgid "Enrollment" +msgstr "" + +#: ecommerce/extensions/voucher/tests/test_utils.py:380 +#: ecommerce/extensions/voucher/tests/test_utils.py:388 +#: ecommerce/extensions/voucher/utils.py:96 +#: ecommerce/extensions/voucher/utils.py:165 +#, python-brace-format +msgid "{percentage} %" +msgstr "" + +#: ecommerce/extensions/voucher/tests/test_utils.py:544 +#: ecommerce/extensions/voucher/utils.py:78 +msgid "Inactive" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:53 +#: ecommerce/extensions/voucher/utils.py:192 +#: ecommerce/extensions/voucher/utils.py:271 +#: ecommerce/extensions/voucher/utils.py:329 +#: ecommerce/extensions/voucher/utils.py:332 +#: ecommerce/extensions/voucher/utils.py:337 +msgid "Catalog Query" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:55 +#: ecommerce/extensions/voucher/utils.py:285 +#: ecommerce/extensions/voucher/utils.py:340 +msgid "Redeemed For Course IDs" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:57 +#: ecommerce/extensions/voucher/utils.py:284 +#: ecommerce/extensions/voucher/utils.py:331 +#: ecommerce/extensions/voucher/utils.py:339 +msgid "Redeemed For Course ID" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:76 +#: ecommerce/templates/oscar/dashboard/users/detail.html:52 +msgid "Active" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:171 +#: ecommerce/extensions/voucher/utils.py:219 +#: ecommerce/extensions/voucher/utils.py:263 +msgid "Code" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:171 +msgid "This row applies to all vouchers" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:172 +#: ecommerce/extensions/voucher/utils.py:275 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:126 +msgid "Category" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:173 +#: ecommerce/extensions/voucher/utils.py:288 +msgid "Coupon Expiry Date" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:174 +#: ecommerce/extensions/voucher/utils.py:264 +msgid "Coupon Name" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:175 +#: ecommerce/extensions/voucher/utils.py:287 +msgid "Coupon Start Date" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:176 +#: ecommerce/extensions/voucher/utils.py:267 +msgid "Coupon Type" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:177 +#: ecommerce/extensions/voucher/utils.py:286 +msgid "Create Date" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:178 +#: ecommerce/extensions/voucher/utils.py:279 +msgid "Discount Percentage" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:179 +#: ecommerce/extensions/voucher/utils.py:280 +msgid "Discount Amount" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:180 +#: ecommerce/extensions/voucher/utils.py:289 +msgid "Email Domains" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:181 +#: ecommerce/extensions/voucher/utils.py:278 +msgid "Invoiced Amount" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:182 +#: ecommerce/extensions/voucher/utils.py:276 +msgid "Note" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:183 +#: ecommerce/extensions/voucher/utils.py:277 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:50 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:61 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:63 +msgid "Price" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:187 +#: ecommerce/extensions/voucher/utils.py:269 +#: ecommerce/extensions/voucher/utils.py:327 +#: ecommerce/extensions/voucher/utils.py:333 +#: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:8 +msgid "Course ID" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:188 +#: ecommerce/extensions/voucher/utils.py:273 +#: ecommerce/extensions/voucher/utils.py:328 +#: ecommerce/extensions/voucher/utils.py:334 +msgid "Organization" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:193 +#: ecommerce/extensions/voucher/utils.py:272 +#: ecommerce/extensions/voucher/utils.py:330 +#: ecommerce/extensions/voucher/utils.py:338 +msgid "Course Seat Types" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:220 +#: ecommerce/extensions/voucher/utils.py:265 +#: ecommerce/extensions/voucher/utils.py:321 +msgid "Maximum Coupon Usage" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:221 +#: ecommerce/extensions/voucher/utils.py:266 +#: ecommerce/extensions/voucher/utils.py:322 +msgid "Redemption Count" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:223 +#: ecommerce/extensions/voucher/utils.py:268 +msgid "URL" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:274 +#: ecommerce/extensions/voucher/utils.py:297 +msgid "Client" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:282 +#: ecommerce/extensions/voucher/utils.py:302 +#: ecommerce/extensions/voucher/utils.py:319 +#: ecommerce/templates/oscar/dashboard/users/detail.html:138 +msgid "Order Number" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:283 +#: ecommerce/extensions/voucher/utils.py:302 +#: ecommerce/extensions/voucher/utils.py:320 +msgid "Redeemed By Username" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:785 +#, python-brace-format +msgid "Range for coupon [{coupon_id}]" +msgstr "" + +#: ecommerce/extensions/voucher/views.py:31 +#, python-brace-format +msgid "Coupon Report for {coupon_name}" +msgstr "" + +#: ecommerce/extensions/voucher/views.py:40 +msgid "" +"Failed to find a matching stock record for coupon, report download canceled." +msgstr "" + +#: ecommerce/invoice/models.py:13 +msgid "Not Paid" +msgstr "" + +#: ecommerce/invoice/models.py:14 +msgid "Paid" +msgstr "" + +#: ecommerce/invoice/models.py:18 +msgid "Prepaid" +msgstr "" + +#: ecommerce/invoice/models.py:19 +msgid "Postpaid" +msgstr "" + +#: ecommerce/invoice/models.py:20 +msgid "Bulk purchase" +msgstr "" + +#: ecommerce/invoice/models.py:21 +msgid "Not applicable" +msgstr "" + +#: ecommerce/invoice/models.py:26 +msgid "Fixed" +msgstr "" + +#: ecommerce/management/templates/management/index.html:7 +msgid "Management View" +msgstr "" + +#: ecommerce/management/templates/management/index.html:26 +msgid "Refund Transactions" +msgstr "" + +#: ecommerce/management/views.py:53 +#, python-brace-format +msgid "{action} is not a valid action." +msgstr "" + +#: ecommerce/programs/benefits.py:27 +#, python-brace-format +msgid "{value}% program discount" +msgstr "" + +#: ecommerce/programs/benefits.py:44 +#, python-brace-format +msgid "{value} fixed-price program discount" +msgstr "" + +#: ecommerce/programs/forms.py:70 +msgid "An offer already exists for this program." +msgstr "" + +#: ecommerce/programs/forms.py:90 +#, python-brace-format +msgid "{current_date} Discount for the {program_title} {program_type} Program" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_form.html:9 +#, python-format +msgid "Edit Program Offer: %(program_title)s" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_form.html:14 +#: ecommerce/programs/templates/programs/programoffer_form.html:47 +#: ecommerce/programs/templates/programs/programoffer_form.html:60 +#: ecommerce/programs/templates/programs/programoffer_list.html:20 +msgid "Create Program Offer" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_form.html:30 +#: ecommerce/programs/templates/programs/programoffer_list.html:6 +#: ecommerce/programs/templates/programs/programoffer_list.html:17 +#: ecommerce/templates/edx/partials/_administration_menu.html:11 +msgid "Program Offers" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_form.html:45 +msgid "Edit Program Offer" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_form.html:76 +#: ecommerce/programs/templates/programs/programoffer_list.html:60 +#, python-format +msgid "" +"\n" +" %(platform_name)s Program Offer Administration Tool\n" +" " +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_list.html:26 +msgid "Current program offers" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_list.html:29 +msgid "Program Title" +msgstr "" + +#: ecommerce/programs/views.py:38 +msgid "Program offer updated!" +msgstr "" + +#: ecommerce/programs/views.py:61 +msgid "Program offer created!" +msgstr "" + +#: ecommerce/referrals/models.py:26 +msgid "Affiliate ID" +msgstr "" + +#: ecommerce/referrals/models.py:27 +msgid "UTM Source" +msgstr "" + +#: ecommerce/referrals/models.py:28 +msgid "UTM Medium" +msgstr "" + +#: ecommerce/referrals/models.py:29 +msgid "UTM Campaign" +msgstr "" + +#: ecommerce/referrals/models.py:30 +msgid "UTM Term" +msgstr "" + +#: ecommerce/referrals/models.py:31 +msgid "UTM Content" +msgstr "" + +#: ecommerce/referrals/models.py:32 +msgid "UTM Created At" +msgstr "" + +#: ecommerce/settings/_oscar.py:233 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 +#: ecommerce/templates/oscar/dashboard/index.html:22 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:14 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:29 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:30 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:31 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:30 +#: ecommerce/templates/oscar/dashboard/users/detail.html:20 +msgid "Dashboard" +msgstr "" + +#: ecommerce/settings/_oscar.py:238 +msgid "Catalogue" +msgstr "" + +#: ecommerce/settings/_oscar.py:242 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 +msgid "Products" +msgstr "" + +#: ecommerce/settings/_oscar.py:246 +msgid "Product Types" +msgstr "" + +#: ecommerce/settings/_oscar.py:250 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 +msgid "Categories" +msgstr "" + +#: ecommerce/settings/_oscar.py:254 +msgid "Ranges" +msgstr "" + +#: ecommerce/settings/_oscar.py:258 +msgid "Low stock alerts" +msgstr "" + +#: ecommerce/settings/_oscar.py:264 +msgid "Fulfillment" +msgstr "" + +#: ecommerce/settings/_oscar.py:268 +#: ecommerce/templates/oscar/dashboard/index.html:33 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:11 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:32 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:38 +#: ecommerce/templates/oscar/dashboard/users/detail.html:120 +#: ecommerce/templates/oscar/dashboard/users/detail.html:134 +msgid "Orders" +msgstr "" + +#: ecommerce/settings/_oscar.py:272 +msgid "Statistics" +msgstr "" + +#: ecommerce/settings/_oscar.py:280 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:11 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:32 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:38 +#: ecommerce/templates/oscar/dashboard/users/detail.html:121 +msgid "Refunds" +msgstr "" + +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 +#: ecommerce/templates/oscar/dashboard/users/detail.html:23 +msgid "Customers" +msgstr "" + +#: ecommerce/settings/_oscar.py:294 +msgid "Stock alert requests" +msgstr "" + +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 +msgid "Offers" +msgstr "" + +#: ecommerce/settings/_oscar.py:308 +msgid "Vouchers" +msgstr "" + +#: ecommerce/settings/_oscar.py:314 +msgid "Reports" +msgstr "" + +#: ecommerce/settings/base.py:93 +msgid "English" +msgstr "" + +#: ecommerce/settings/base.py:94 +msgid "Spanish" +msgstr "" + +#: ecommerce/settings/base.py:95 +msgid "Spanish (Latin American)" +msgstr "" + +#: ecommerce/templates/base.html:10 +msgid "Build" +msgstr "" + +#: ecommerce/templates/base.html:71 +msgid "Version:" +msgstr "" + +#: ecommerce/templates/coupons/_offer_error.html:4 +#: ecommerce/templates/coupons/offer.html:5 +#: ecommerce/templates/edx/email_confirmation_required.html:4 +msgid "Redeem" +msgstr "" + +#: ecommerce/templates/coupons/coupon_app.html:5 +msgid "Coupon Codes" +msgstr "" + +#: ecommerce/templates/coupons/offer.html:18 +msgid "" +"Earn a verified certificate in one of our popular courses to advance your " +"career, showcase your accomplishments or enhance your college application." +msgstr "" + +#: ecommerce/templates/coupons/offer.html:22 +msgid "Why buy a verified certificate?" +msgstr "" + +#: ecommerce/templates/coupons/offer.html:27 +msgid "" +"A verified certificate (digital) confirming that a user has completed the " +"course on a specified date. The certificate includes edX's logo and the " +"university's logo, as well as signatures from faculty members involved with " +"the course. There is also a URL that can be used to verify the authenticity " +"of the certificate." +msgstr "" + +#: ecommerce/templates/coupons/offer.html:30 +msgid "" +"A verified certificate demonstrates to future employers that you've mastered" +" the course material." +msgstr "" + +#: ecommerce/templates/coupons/offer.html:32 +msgid "" +"The certificate is officially signed and stamped by the institution that " +"offers the course." +msgstr "" + +#: ecommerce/templates/coupons/offer.html:34 +msgid "" +"You're twelve times more likely to complete the course if you're working " +"toward a verified certificate." +msgstr "" + +#: ecommerce/templates/courses/course_app.html:5 +#: ecommerce/templates/edx/partials/_administration_menu.html:5 +msgid "Courses" +msgstr "" + +#: ecommerce/templates/courses/course_app.html:27 +#, python-format +msgid "" +"\n" +" %(platform_name)s Course Administration Tool\n" +" " +msgstr "" + +#: ecommerce/templates/courses/menu_options.html:8 +msgid "Student Dashboard" +msgstr "" + +#: ecommerce/templates/courses/menu_options.html:11 +msgid "Course Admin Tool" +msgstr "" + +#: ecommerce/templates/courses/menu_options.html:14 +msgid "E-Commerce Dashboard" +msgstr "" + +#: ecommerce/templates/edx/base_menu.html:7 +msgid "Sign Out" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:13 +#, python-format +msgid "Receipt for %(order_number)s" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:43 +msgid "Thank you for your order!" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:53 +#, python-brace-format +msgid "" +"Your order is complete. You will receive a confirmation message and your " +"enrollment code(s) at {link_start}{email}{link_end}. If you need a receipt, " +"you can print this page." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 +msgid "" +"Your order is complete. If you need a receipt, you can print this page." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:87 +msgid "Order Number:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:90 +msgid "Payment Method:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:93 +msgid "Order Date:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:99 +msgid "Order Information" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:104 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:12 +msgid "Description" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:105 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 +msgid "Item Price" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:109 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 +msgid "Quantity:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:111 +msgid "Description:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:120 +msgid "Item Price:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:126 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 +msgid "Subtotal" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:142 +#, python-format +msgid "%(voucher_discount_amount)s off" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:152 +#, python-format +msgid "Discount of type %(type)s provided by %(enterprise_name)s" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:157 +msgid "Discount for your first upgrade" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:160 +#, python-format +msgid "Discount of type %(type)s is provided." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:174 +#, python-format +msgid "Courtesy of %(enterprise_name)s." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:187 +msgid "Total" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:194 +msgid "Get Your Course Credit" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:196 +#, python-brace-format +msgid "" +"To receive academic credit for this course, you must apply for credit at the" +" organization that offers the credit. You can find a link to the " +"organization’s website on your " +"{link_start}{lms_dashboard_url}{link_middle}dashboard{link_end}, next to the" +" course name." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:210 +msgid "Go to dashboard" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:213 +msgid "Find more courses" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt_not_found.html:7 +msgid "Order Not Found" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt_not_found.html:19 +#, python-format +msgid " %(error_summary)s " +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt_not_found.html:23 +msgid "" +"The specified order could not be located. Please ensure that the URL is " +"correct, and try again." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt_not_found.html:31 +#, python-brace-format +msgid "" +"\n" +" You may also view your previous orders on the {link_start}{order_history_url}{link_middle}{link_end}Account Settings{link_end}\n" +" page.\n" +" " +msgstr "" + +#: ecommerce/templates/edx/credit/_provider_detail.html:8 +msgid "Select" +msgstr "" + +#: ecommerce/templates/edx/credit/_provider_detail.html:16 +msgid "Credits: " +msgstr "" + +#: ecommerce/templates/edx/credit/_provider_detail.html:17 +msgid "Price: " +msgstr "" + +#: ecommerce/templates/edx/credit/_provider_detail.html:27 +#, python-format +msgid "" +"\n" +" Learn more about %(display_name)s credit?\n" +" " +msgstr "" + +#: ecommerce/templates/edx/credit/_provider_detail.html:47 +#, python-format +msgid "" +"\n" +" Credit available until %(date)s\n" +" " +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:9 +#, python-format +msgid "Purchase Credit for %(course_name)s" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:27 +#, python-format +msgid "" +"\n" +" Purchase Credit for %(course_name)s\n" +" " +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:34 +#, python-format +msgid "" +"\n" +" Congratulations! You are eligible to purchase academic course credit for this course.\n" +" You must purchase your credit before %(date)s.\n" +" Select one of the following institutions to purchase your credit.\n" +" " +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:51 +msgid "Price:" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:55 +msgid "Discount:" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:60 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:127 +msgid "Total:" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:89 +msgid "You deserve it." +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:92 +msgid "" +"The hard work is over - you passed the course! Now get the credit you " +"deserve to start or complete a degree." +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:98 +msgid "It's affordable." +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:101 +msgid "" +"The credit offered through edX generally costs less than the same credit at " +"most institutions." +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:107 +msgid "It opens doors." +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:110 +msgid "" +"Many of today's most in-demand jobs require a college degree. Start your " +"path to success!" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:118 +msgid "Questions?" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:121 +#, python-brace-format +msgid "" +"\n" +" Please read {link_start}our FAQs to view common questions about our certificates.{link_end}\n" +" " +msgstr "" + +#: ecommerce/templates/edx/email_confirmation_required.html:16 +msgid "You are enrolling in: " +msgstr "" + +#: ecommerce/templates/edx/email_confirmation_required.html:26 +#, python-format +msgid "" +"An email has been sent to %(user_email)s with a link for you to activate " +"your account." +msgstr "" + +#: ecommerce/templates/edx/email_confirmation_required.html:29 +msgid "Why activate?" +msgstr "" + +#: ecommerce/templates/edx/email_confirmation_required.html:31 +msgid "" +"We ask you to activate your account to ensure it is really you creating the " +"account and to prevent fraud." +msgstr "" + +#: ecommerce/templates/edx/error.html:17 +msgid "If you need assistance, contact edX support." +msgstr "" + +#: ecommerce/templates/edx/partials/_administration_menu.html:6 +msgid "Coupons" +msgstr "" + +#: ecommerce/templates/edx/partials/_administration_menu.html:8 +msgid "Enterprise Coupons" +msgstr "" + +#: ecommerce/templates/edx/partials/_base_navbar.html:10 +msgid "Toggle navigation" +msgstr "" + +#: ecommerce/templates/edx/partials/_base_navbar.html:25 +msgid "Dashboard for:" +msgstr "" + +#: ecommerce/templates/edx/partials/_base_navbar.html:32 +msgid "Toggle Dropdown" +msgstr "" + +#: ecommerce/templates/edx/partials/_base_navbar.html:40 +#: ecommerce/templates/edx/partials/_base_navbar.html:41 +msgid "Login" +msgstr "" + +#: ecommerce/templates/edx/partials/_staff_navbar.html:9 +msgid "E-Commerce Course Administration" +msgstr "" + +#: ecommerce/templates/edx/partials/_staff_navbar.html:14 +msgid "E-Commerce Coupon Administration" +msgstr "" + +#: ecommerce/templates/edx/partials/_staff_navbar.html:19 +msgid "E-Commerce Program Offers Administration" +msgstr "" + +#: ecommerce/templates/oscar/basket/basket.html:48 +msgid "Your basket is empty" +msgstr "" + +#: ecommerce/templates/oscar/basket/basket.html:49 +#, python-brace-format +msgid "" +"\n" +" If you attempted to make a purchase, you have not been charged. Return to your {link_start}{link_middle}{homepage_url}dashboard{link_end} to try\n" +" again, or {link_start}{homepage_url}{link_middle}contact {platform_name} Support{link_end}.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/messages/new_total.html:7 +msgid "Your basket is now empty" +msgstr "" + +#: ecommerce/templates/oscar/basket/messages/new_total.html:10 +#: ecommerce/templates/oscar/basket/messages/new_total.html:16 +#, python-brace-format +msgid "" +"\n" +" {strong_start}We’ve updated your quantity.{strong_end}\n" +" {paragraph_start}Your cart includes {num_items} enrollment codes at a total cost of {total}, that you will receive via email.{paragraph_end}\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/messages/new_total.html:27 +msgid "View basket" +msgstr "" + +#: ecommerce/templates/oscar/basket/messages/new_total.html:28 +msgid "Checkout now" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/add_voucher_form.html:11 +msgid "Applying..." +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/add_voucher_form.html:16 +msgid "Apply" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:16 +msgid "in your cart" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:17 +msgid "Your purchase contains the following" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:36 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:57 +msgid "Updating..." +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:36 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:57 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:518 +msgid "Update" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:47 +msgid "summary" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:68 +msgid "Discounts applied" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:80 +#, python-format +msgid "" +"\n" +" %(benefit)s discount provided by %(enterprise_customer_name)s.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:87 +#, python-format +msgid "" +"\n" +" %(benefit)s%% discount for your first upgrade applied.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:104 +#, python-format +msgid "" +"\n" +" Coupon %(voucher_code)s applied for %(total_benefit)s off\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:110 +msgid "Remove coupon" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:119 +msgid "Add coupon code" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:119 +msgid "(optional)" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:128 +msgid "TOTAL" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:135 +msgid "order details" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:153 +msgid "select payment method" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:155 +msgid "Pay with a Credit Card" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:166 +msgid "Pay with PayPal" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:175 +msgid "Pay with Apple Pay" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:190 +msgid "card holder information" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:201 +msgid "billing information" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:203 +msgid "Credit cards" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:210 +msgid "Card Number (required)" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:210 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:220 +msgid "Secure" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:213 +msgid "Credit card icon" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:219 +msgid "Security Code (required)" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:223 +msgid "Help with CVV" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:226 +msgid "" +"The three last digits in the signature area on the back of your card. For " +"American Express, it is the four digits on the front of the card." +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:233 +msgid "Expiration (required)" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:237 +msgid "Month" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:247 +msgid "Year" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:264 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:274 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:152 +msgid "Place Order" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:23 +msgid "Earn a valuable certificate to showcase the skills you learn in" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:70 +#, python-format +msgid "" +"\n" +" %(benefit_value)s off\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:99 +#, python-format +msgid "" +"\n" +" Coupon code %(voucher_code)s applied\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:116 +msgid "Apply a coupon code" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:164 +#, python-format +msgid "Checkout with %(title)s" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:166 +msgid "Checkout" +msgstr "" + +#. Translators: tags will bold the text within. Keep the +#. tags and translate the text within. +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:179 +#, python-brace-format +msgid "" +"{strong_start}Note:{strong_end} To complete your enrollment, select Checkout" +" or Checkout with PayPal." +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:185 +msgid "Have questions?" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:186 +msgid "Please read our FAQs to view common questions about our certificates." +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/seat_type.html:6 +#, python-format +msgid "" +"\n" +" %(seat_type)s Certificate\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/checkout/cancel_checkout.html:7 +#: ecommerce/templates/oscar/checkout/cancel_checkout.html:16 +msgid "Checkout Cancelled" +msgstr "" + +#: ecommerce/templates/oscar/checkout/cancel_checkout.html:18 +#, python-brace-format +msgid "" +"\n" +" Your transaction has been cancelled. If you feel an error has occurred, contact {start_link}\n" +" {payment_support_email}{end_link}.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/checkout/error.html:7 +#: ecommerce/templates/oscar/checkout/error.html:18 +msgid "Checkout Error" +msgstr "" + +#: ecommerce/templates/oscar/checkout/error.html:19 +msgid "An error has occurred with your payment." +msgstr "" + +#: ecommerce/templates/oscar/checkout/error.html:19 +msgid "You have not been charged." +msgstr "" + +#: ecommerce/templates/oscar/checkout/error.html:21 +#, python-brace-format +msgid "" +"\n" +" Please try to submit your payment again. If this problem persists, please refer to our {start_link}\n" +" Payments FAQ {end_link} for troubleshooting tips.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/checkout/payment_error.html:7 +#: ecommerce/templates/oscar/checkout/payment_error.html:16 +msgid "Payment Failed" +msgstr "" + +#: ecommerce/templates/oscar/checkout/payment_error.html:18 +#, python-brace-format +msgid "" +"An error occurred while processing your payment. {strong_start}You have not " +"been charged.{strong_end}" +msgstr "" + +#: ecommerce/templates/oscar/checkout/payment_error.html:25 +#, python-brace-format +msgid "" +"Please wait a few minutes and then try again. For help, check our " +"{start_link}Help Center{end_link}." +msgstr "" + +#: ecommerce/templates/oscar/checkout/payment_error.html:32 +#, python-brace-format +msgid "To try again, return to your {start_link}dashboard{end_link}." +msgstr "" + +#: ecommerce/templates/oscar/checkout/sdn_failure.html:9 +msgid "" +"\n" +" SDN Check Failure\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/checkout/sdn_failure.html:26 +msgid "" +"Unfortunately, your account profile or payment information appears to match " +"one or more records on a U.S. Treasury Department sanctions list. This means" +" we cannot complete your transaction or provide you with services and must " +"suspend your learner account." +msgstr "" + +#: ecommerce/templates/oscar/checkout/sdn_failure.html:35 +#, python-brace-format +msgid "" +"If you have questions regarding clearing a match, please contact " +"{ofac_email_link} ofac.reconsideration@treasury.gov{end_link} for " +"information about options for clearing a match. Your account will be " +"suspended until this matter is resolved satisfactorily." +msgstr "" + +#: ecommerce/templates/oscar/communication/email_base.html:189 +#: ecommerce/templates/oscar/customer/email_base.html:189 +#, python-format +msgid "Copyright © %(year)s %(platform_name)s. All rights reserved." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:9 +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:4 +#, python-format +msgid "Hi %(full_name)s," +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:11 +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:6 +#, python-format +msgid "" +"Thank you for purchasing %(course_title)s. A charge will appear on your " +"credit or debit card statement with a company name of \"%(platform_name)s\"." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:13 +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:8 +#, python-format +msgid "" +"You can access your course and complete your verification (if required) on " +"your %(platform_name)s dashboard. " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:14 +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:9 +#, python-format +msgid "" +"To explore other great courses, visit the %(platform_name)s website. More " +"courses are added every day!" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:17 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:43 +msgid "View Payment Information" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:20 +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:14 +msgid "Thank you. We hope you enjoy the course!" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:21 +#, python-format +msgid "%(platform_name)s team " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:31 +#, python-format +msgid "" +"You are receiving this email because you purchased a seat in the " +"%(platform_name)s course %(course_title)s." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:2 +msgid "Receipt Confirmation for: " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:11 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:12 +msgid "To view your payment information, visit the following website." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:16 +#, python-format +msgid "%(platform_name)s team" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:18 +msgid "The edX team" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_subject.txt:2 +msgid "Order Placed" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:13 +msgid "Payment Confirmation" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:27 +msgid "Payment confirmation for:" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:55 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:4 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:25 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:5 +#, python-format +msgid "Dear %(full_name)s," +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:60 +#, python-format +msgid "" +"\n" +" Thank you for purchasing %(credit_hours)s credit hours from %(credit_provider)s for %(course_title)s. A charge will appear on your credit or debit card statement with a company name of \"%(platform_name)s\".\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:67 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:8 +#, python-format +msgid "" +"To receive your course credit, you must also request credit at the " +"%(credit_provider)s website. For a link to request credit from " +"%(credit_provider)s, or to see the status of your credit request, go to your" +" %(platform_name)s dashboard." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:71 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:10 +#, python-format +msgid "" +"To explore other credit-eligible courses, visit the %(platform_name)s " +"website. We add new courses frequently!" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:74 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:15 +msgid "Thank you. We hope you enjoyed your course!" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:75 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:16 +#, python-format +msgid "The %(platform_name)s team" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:88 +#, python-format +msgid "" +"\n" +" You received this message because you purchased credit hours for %(course_title)s, an %(platform_name)s course.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:2 +msgid "Payment confirmation for: " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:6 +#, python-format +msgid "" +"Thank you for purchasing %(credit_hours)s credit hours from " +"%(credit_provider)s for %(course_title)s. A charge will appear on your " +"credit or debit card statement with a company name of \"%(platform_name)s\"." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:18 +#, python-format +msgid "" +"You received this message because you purchased credit hours for " +"%(course_title)s, an %(platform_name)s course." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_subject.txt:2 +msgid "Order Receipt" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:14 +msgid "For Business" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:26 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:6 +#, python-format +msgid "" +"Thank you for purchasing access to %(course_name)s. Let's get your group " +"ready to learn with edX:" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:29 +#, python-brace-format +msgid "" +"\n" +" Download and save the {link_start}{download_csv_link}{link_middle} enrollment code file.{link_end}\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:34 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:9 +msgid "Distribute one code per learner before the expiration date." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:35 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:10 +msgid "Pro tip: Track which code is associated with which person." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:36 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:11 +msgid "Learners sign-in/register with edX and enroll for the course." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:39 +#, python-brace-format +msgid "" +"\n" +" To view your payment information, log in to see your Order History, under {link_start}{order_history_url}{link_middle}Account Settings{link_end}.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:45 +#, python-brace-format +msgid "" +"\n" +" For more information and assistance, check our {link_start}Help Center{link_end}\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:50 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:16 +msgid "Thank You" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:61 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:18 +msgid "By purchasing, you and your organization agree to the following terms:" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:63 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:20 +msgid "" +"Each code is valid for the one course covered and can be used only one time." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:64 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:21 +msgid "You are responsible for distributing codes to your learners." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:65 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:22 +msgid "" +"Each code will expire in one year from date of purchase or, if earlier, once" +" the course is closed." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:66 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:23 +msgid "" +"If a course is not designated as self-paced, you should confirm that a " +"course run is available before expiration." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:67 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:24 +msgid "You may not resell codes to third parties." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:68 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:25 +msgid "All sales final. No refunds." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:2 +msgid "Order confirmation for: " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:8 +#, python-format +msgid "" +"Please visit %(download_csv_link)s to download and save the enrollment code " +"file." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:13 +#, python-format +msgid "" +"To view your payment information, log in to see your Order History, under " +"Account Settings at %(order_history_url)s." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:14 +msgid "For more information and assistance, contact info@edx.org." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_subject.txt:2 +#, python-format +msgid "%(partner_name)s: Order Confirmation: [%(order_number)s]" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:6 +#: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:6 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:147 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:77 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:62 +#: ecommerce/templates/oscar/dashboard/users/detail.html:99 +msgid "Actions" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:12 +msgid "Edit category" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:17 +msgid "Add child category" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:22 +msgid "Edit children" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:27 +#: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:14 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:271 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:700 +msgid "Delete" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:11 +#, python-format +msgid "" +"\n" +" Created product variant '%(name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:17 +#, python-format +msgid "" +"\n" +" Created variant of '%(parent_name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:25 +#, python-format +msgid "" +"\n" +" Updated product variant '%(name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:31 +#, python-format +msgid "" +"\n" +" Updated a variant of '%(parent_name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:42 +#, python-format +msgid "" +"\n" +" Created product '%(name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:48 +#, python-format +msgid "" +"\n" +" Updated product '%(name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:60 +msgid "Edit again" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:45 +#, python-brace-format +msgid "" +"\n" +" You are currently editing a product variant of\n" +" {start_anchor}{title}{end_anchor}.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:61 +msgid "Sections" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:73 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:103 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:34 +msgid "Product details" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:78 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:146 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:257 +msgid "Attributes" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:81 +msgid "Images" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:84 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:188 +msgid "Stock and pricing" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:87 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:248 +msgid "Variants" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:90 +msgid "Upselling" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:148 +msgid "Product Type:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:169 +msgid "Upload, change or remove images" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:194 +msgid "SKU" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:196 +msgid "Num in stock" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:197 +msgid "Num allocated" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:198 +msgid "Low stock threshold" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:201 +msgid "Cost price" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:202 +msgid "Price (excl tax)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:203 +msgid "Retail price" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:204 +msgid "Delete?" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:249 +msgid "Adding..." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:251 +msgid "Add variant" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:256 +msgid "Title" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:258 +msgid "Stock records" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:280 +msgid "This product does not have any variants." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:282 +msgid "One can't add variants to this product at this point." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:284 +msgid "This is likely because this product still has stock records." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:300 +msgid "Recommended products" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:325 +msgid "or" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:327 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:331 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:334 +msgid "Saving..." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:328 +msgid "Save and add another variant" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:332 +msgid "Save and continue editing" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:335 +msgid "Save" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:27 +msgid "Store Statistics (Last 24 Hours)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:34 +msgid "New Customers" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:35 +#: ecommerce/templates/oscar/dashboard/index.html:41 +msgid "Revenue" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:36 +msgid "Average order cost" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:37 +msgid "Average (paid) order cost" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:67 +msgid "Products and vouchers" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:69 +msgid "Total products" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:73 +msgid "Active Vouchers" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:6 +#, python-format +msgid "%(name)s | Offers " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:25 +msgid "Reinstating..." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:25 +msgid "Reinstate offer" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:26 +msgid "Suspending..." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:26 +msgid "Suspend offer" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:27 +msgid "Delete offer" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:38 +msgid "Offer currently available" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:39 +msgid "Offer not available due to restrictions!" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:41 +msgid "Total cost:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:42 +msgid "Number of orders:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:43 +msgid "Number of uses:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:48 +msgid "Date created:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:49 +msgid "Offer details" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:67 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:20 +msgid "Incentive" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:72 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:26 +msgid "Condition" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:77 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:31 +msgid "Restrictions" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:92 +msgid "Export to CSV" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:93 +msgid "Orders that used this offer" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:97 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:68 +msgid "Order number" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:98 +msgid "Order date" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:99 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:292 +msgid "Order total" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:100 +msgid "Cost" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/summary.html:4 +msgid "Offer summary" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:6 +#, python-format +msgid "" +"\n" +" Order %(number)s - Line #%(id)s\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:22 +#, python-format +msgid "Line #%(id)s" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:27 +#, python-format +msgid "Order #%(number)s - Line #%(id)s" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:38 +msgctxt "Product title" +msgid "Title" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:44 +msgid "Product Type" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:47 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:140 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:110 +msgid "UPC" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:54 +msgid "Product Options" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:67 +msgid "Partner details" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:77 +msgid "Partner SKU" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:83 +msgid "Shipping details" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:87 +msgid "Partner reference number" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:90 +msgid "Partner notes" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:93 +msgid "Estimate dispatch date" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:102 +msgid "Shipping status" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:107 +msgid "State" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:119 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:150 +msgid "No shipping events have occurred." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:127 +msgid "Shipping events" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:132 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:163 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:404 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:452 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:168 +msgid "Event" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:134 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:406 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:455 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:561 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:595 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:172 +msgid "Reference" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:135 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:165 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:403 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:451 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:597 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:679 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:167 +msgid "Date" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:158 +msgid "Payment events" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:179 +msgid "No payment events have occurred." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:10 +#, python-format +msgid "Order %(number)s" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:39 +#, python-format +msgid "Order #%(number)s" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:45 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:49 +msgid "Customer Information" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:49 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:53 +#: ecommerce/templates/oscar/dashboard/users/detail.html:44 +msgid "Full name" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:50 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:54 +msgid "Email address" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:59 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:63 +msgid "Customer has deleted their account." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:67 +msgid "Order information" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:69 +msgid "Order Total" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:70 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:74 +msgid "Date of purchase" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:71 +msgid "Time of purchase" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:85 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:108 +msgid "Retry Fulfillment" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:96 +msgid "Order Details" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:104 +msgid "Order contents" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:110 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:491 +msgid "Shipping" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:113 +msgid "Payment" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:116 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:623 +msgid "Discounts" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:119 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:673 +msgid "Notes" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:127 +msgid "Items ordered" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:137 +msgid "Line ID" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:139 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:109 +msgid "Product" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:142 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:112 +msgid "Supplier" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:143 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:113 +msgid "Supplier SKU" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:144 +msgid "Est. dispatch date" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:145 +msgid "Price excl tax (before discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:146 +msgid "Price inc tax (before discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:188 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:105 +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:26 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:90 +#: ecommerce/templates/oscar/dashboard/users/detail.html:155 +msgid "View" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:206 +msgid "Basket total (excl. discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:227 +msgid "Basket total (inc. discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:237 +msgid "Basket total" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:250 +msgid "Shipping total (excl. discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:271 +msgid "Shipping total (inc. discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:281 +msgid "Shipping total" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:309 +msgid "With selected lines" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:315 +msgid "Change line status to" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:319 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:125 +msgid "choose new status" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:331 +msgid "Create shipping event" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:335 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:354 +msgid "choose event type" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:342 +msgid "with reference" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:350 +msgid "Create payment event" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:361 +msgid "with amount" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:369 +msgid "Create refund" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:373 +msgid "Go!" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:382 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:119 +msgid "Change order status" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:386 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:134 +msgid "Change status" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:388 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:136 +msgid "This order can't have its status changed." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:396 +msgid "Shipping Events" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:405 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:454 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:170 +msgid "Lines" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:419 +#, python-format +msgid "" +"\n" +" %(title)s (quantity %(event_qty)s/%(total_qty)s)\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:434 +msgid "No shipping events." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:444 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:159 +msgid "Payment Events" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:453 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:594 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:634 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:169 +msgid "Amount" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:467 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 +msgid "Product:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:467 +msgid "quantity" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:479 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:196 +msgid "No payment events." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:496 +msgid "Method name" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:500 +msgid "Method code" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:504 +msgid "Charge (incl tax)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:508 +msgid "Charge (excl tax)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:512 +msgid "Address" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:523 +msgid "Phone" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:527 +msgid "Instructions" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:540 +msgid "Billing address" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:551 +msgid "Payment sources" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:557 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:593 +msgid "Source" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:558 +msgid "Allocation" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:559 +msgid "Amount debited" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:560 +msgid "Amount refunded" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:579 +msgid "No payment sources found for this order." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:588 +msgid "Transactions" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:630 +msgid "Voucher" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:631 +msgid "Offer name" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:632 +msgid "Frequency" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:633 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:682 +msgid "Message" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:661 +msgid "No discounts were applied to this order." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:683 +msgid "Admin" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:708 +msgid "No notes available." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:719 +msgid "Save note" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:720 +msgid "Notes are only editable for 5 minutes after being saved." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:58 +msgid "Download selected orders as a CSV" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:60 +msgid "Download" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:69 +msgid "Total inc tax" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:70 +msgid "Number of items" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:92 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:99 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:78 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:85 +msgid "Deleted" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:149 +msgid "No orders found." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:4 +#: ecommerce/templates/oscar/dashboard/users/detail.html:123 +msgid "Enrollments" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:9 +msgid "Mode" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:10 +msgid "Active?" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:21 +msgid "No enrollments found." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:8 +msgid "Confirm Refund Processing" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:11 +msgid "" +"Are you sure you want to issue a full refund and revoke student's " +"enrollment?" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:14 +msgid "" +"Are you sure you want to issue a full refund without revoking student's " +"enrollment?" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:17 +msgid "Are you sure you want to deny this refund request?" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:21 +msgid "Confirm" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:5 +msgid "Approve Credit and Revoke" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:8 +msgid "Approve Credit Only" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:14 +msgid "Deny" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:10 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:57 +msgid "Number of Items" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:11 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:73 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:148 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:56 +msgid "Total Credit" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:12 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:74 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:61 +msgid "Created" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:31 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:104 +msgid "No refunds found." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:4 +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:25 +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:45 +msgid "Search" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:26 +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:34 +msgid "Advanced Search" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:44 +msgid "Close" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:45 +msgid "Searching..." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:11 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:42 +#, python-format +msgid "Refund #%(id)s" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:71 +msgid "Refund Overview" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:76 +msgid "Associated Order" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:97 +msgid "Refund Items" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:106 +msgid "Refund Line ID" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:107 +msgid "Associated Order Line" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:114 +msgid "Credit (excl. tax)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:171 +msgid "Processor" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:36 +msgid "General" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:54 +msgid "Yes,No" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:58 +msgid "Superuser" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:59 +#: ecommerce/templates/oscar/dashboard/users/detail.html:63 +msgid "True,False" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:62 +msgid "Staff" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:66 +msgid "Last login" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:70 +msgid "Date joined" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:76 +msgid "Products viewed" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:80 +msgid "Number of orders" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:84 +msgid "Number of ordered items" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:88 +msgid "Total spent" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:94 +msgid "Reviews written" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:107 +msgid "Send password reset email" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:125 +#: ecommerce/templates/oscar/dashboard/users/detail.html:186 +msgid "Addresses" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:126 +#: ecommerce/templates/oscar/dashboard/users/detail.html:214 +msgid "Reviews" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:139 +msgid "Num items" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:140 +msgid "Total value" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:141 +msgid "Date placed" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:160 +msgid "This customer has not placed any orders yet." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:205 +msgid "This customer has not saved any addresses." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:217 +msgid "Product ID" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:218 +msgid "Score" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:219 +msgctxt "Product review title" +msgid "Title" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:220 +msgid "Body" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:221 +msgid "Date created" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:234 +msgid "This customer has not written any reviews yet." +msgstr "" + +#: ecommerce/urls.py:45 +msgid "E-Commerce Service Administration" +msgstr "" diff --git a/ecommerce/conf/locale/fi/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/fi/LC_MESSAGES/djangojs.mo new file mode 100644 index 00000000000..46c9ef5e3f2 Binary files /dev/null and b/ecommerce/conf/locale/fi/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/fi/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/fi/LC_MESSAGES/djangojs.po new file mode 100644 index 00000000000..c8bc8384a17 --- /dev/null +++ b/ecommerce/conf/locale/fi/LC_MESSAGES/djangojs.po @@ -0,0 +1,545 @@ +# #-#-#-#-# django.po (ecommerce) #-#-#-#-# +# edX translation file +# Copyright (C) 2018 edX +# This file is distributed under the GNU AFFERO GENERAL PUBLIC LICENSE. +# +# Translators: +# Translators: +# Translators: +# Translators: +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: edx-platform\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" +"PO-Revision-Date: 2015-06-18 02:02+0000\n" +"Last-Translator: Transifex Bot <>\n" +"Language-Team: Finnish (http://app.transifex.com/open-edx/edx-platform/language/fi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fi\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ecommerce/static/js/models/coupon_model.js:33 +#: ecommerce/static/js/models/enterprise_coupon_model.js:15 +msgid "This field is required." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:34 +#: ecommerce/static/js/models/enterprise_coupon_model.js:16 +msgid "This value must be a number." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:35 +#: ecommerce/static/js/models/enterprise_coupon_model.js:17 +msgid "This value must be a date." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:36 +msgid "At least one seat type must be selected." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:72 +msgid "This field must be empty or contain 1-16 alphanumeric characters." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:81 +#, javascript-format +msgid "Email domain {%s} is invalid." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:98 +msgid "Must occur after start date" +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:128 +msgid "Max uses for multi-use coupons must be higher than 2." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:152 +msgid "Must occur before end date" +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:174 +msgid "A valid course ID is required" +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:188 +msgid "A valid Program UUID is required." +msgstr "" + +#: ecommerce/static/js/models/course_model.js:54 +msgid "You must select a course type." +msgstr "" + +#: ecommerce/static/js/models/course_model.js:60 +msgid "You must choose if an honor seat should be created." +msgstr "" + +#: ecommerce/static/js/models/course_model.js:77 +msgid "The verification deadline must occur AFTER the upgrade deadline." +msgstr "" + +#: ecommerce/static/js/models/course_model.js:86 +msgid "Product validation failed." +msgstr "" + +#: ecommerce/static/js/models/course_model.js:94 +#: ecommerce/static/js/views/dynamic_catalog_view.js:70 +msgid "Course ID" +msgstr "" + +#: ecommerce/static/js/models/course_model.js:95 +msgid "Course Name" +msgstr "" + +#: ecommerce/static/js/models/course_model.js:96 +#: ecommerce/static/js/views/course_list_view.js:77 +msgid "Course Type" +msgstr "" + +#: ecommerce/static/js/models/course_model.js:97 +msgid "Verification Deadline" +msgstr "" + +#: ecommerce/static/js/models/course_model.js:98 +msgid "Include Honor Seat" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:28 +msgid "All course seats must have a price." +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:45 +msgid "Verified seats must have an upgrade deadline." +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:53 +msgid "The upgrade deadline must occur BEFORE the verification deadline." +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:84 +msgid "Verified" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:86 +#: ecommerce/static/js/views/course_form_view.js:77 +msgid "Credit" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:89 +msgid "Professional" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:91 +msgid "Honor" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:93 +msgid "Audit" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:101 +msgid "Verified Certificate" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:105 +msgid "Professional Certificate" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:108 +msgid "Honor Certificate" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:111 +msgid "No Certificate" +msgstr "" + +#: ecommerce/static/js/models/course_seats/credit_seat.js:26 +msgid "All credit seats must have a credit provider." +msgstr "" + +#: ecommerce/static/js/models/course_seats/credit_seat.js:30 +msgid "Please select a valid credit provider." +msgstr "" + +#: ecommerce/static/js/models/course_seats/credit_seat.js:39 +msgid "All credit seats must designate a number of credit hours." +msgstr "" + +#: ecommerce/static/js/models/enterprise_coupon_model.js:18 +msgid "This value must be a valid email." +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:27 +msgid "Problem occurred during checkout. Please contact support." +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:101 +msgid "This field is required" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:145 +msgid "Invalid card number" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:147 +msgid "Unsupported card type" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:149 +msgid "Invalid security number" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:154 +msgid "Invalid month" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:156 +msgid "Invalid year" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:158 +msgid "Card expired" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:474 +msgid "" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:475 +msgid "State/Province (required)" +msgstr "" + +#: ecommerce/static/js/pages/coupon_create_page.js:12 +#: ecommerce/static/js/pages/enterprise_coupon_create_page.js:12 +msgid "Create New Coupon" +msgstr "" + +#: ecommerce/static/js/pages/coupon_detail_page.js:13 +#: ecommerce/static/js/pages/enterprise_coupon_detail_page.js:13 +msgid "View Coupon" +msgstr "" + +#: ecommerce/static/js/pages/coupon_edit_page.js:13 +#: ecommerce/static/js/pages/enterprise_coupon_edit_page.js:13 +msgid "Edit Coupon" +msgstr "" + +#: ecommerce/static/js/pages/coupon_list_page.js:10 +msgid "Coupon Codes" +msgstr "" + +#: ecommerce/static/js/pages/course_create_page.js:12 +msgid "Create New Course" +msgstr "" + +#: ecommerce/static/js/pages/course_detail_page.js:13 +msgid "View Course" +msgstr "" + +#: ecommerce/static/js/pages/course_edit_page.js:13 +msgid "Edit Course" +msgstr "" + +#: ecommerce/static/js/pages/course_list_page.js:10 +msgid "Courses" +msgstr "" + +#: ecommerce/static/js/pages/enterprise_coupon_list_page.js:10 +msgid "Enterprise Coupon Codes" +msgstr "" + +#: ecommerce/static/js/pages/offer_page.js:14 +msgid "Redeem" +msgstr "" + +#: ecommerce/static/js/pages/receipt_page.js:21 +msgid "" +"Caution! Using the back button on this page may cause you to be charged " +"again." +msgstr "" + +#. Translators: Do not translate "Apple Pay". +#: ecommerce/static/js/payment_processors/cybersource.js:225 +msgid "" +"Apple Pay is not available at this time. Please try another payment method." +msgstr "" + +#: ecommerce/static/js/payment_processors/cybersource.js:255 +msgid "" +"An error occurred while processing your payment. You have NOT been charged. " +"Please try again, or select another payment method." +msgstr "" + +#: ecommerce/static/js/payment_processors/stripe.js:71 +msgid "" +"An error occurred while attempting to process your payment. You have not " +"been charged. Please check your payment details, and try again." +msgstr "" + +#: ecommerce/static/js/payment_processors/stripe.js:110 +msgid "An error occurred while processing your payment. Please try again." +msgstr "" + +#: ecommerce/static/js/utils/utils.js:184 +msgid "Trailing comma not allowed." +msgstr "" + +#: ecommerce/static/js/views/coupon_detail_view.js:108 +#: ecommerce/static/js/views/coupon_form_view.js:62 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:30 +msgid "Can be used once by one customer" +msgstr "" + +#: ecommerce/static/js/views/coupon_detail_view.js:110 +#: ecommerce/static/js/views/coupon_form_view.js:70 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:38 +msgid "Can be used multiple times by multiple customers" +msgstr "" + +#: ecommerce/static/js/views/coupon_detail_view.js:112 +#: ecommerce/static/js/views/coupon_form_view.js:66 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:34 +msgid "Can be used once by multiple customers" +msgstr "" + +#: ecommerce/static/js/views/coupon_form_view.js:51 +msgid "Enrollment Code" +msgstr "" + +#: ecommerce/static/js/views/coupon_form_view.js:55 +msgid "Discount Code" +msgstr "" + +#: ecommerce/static/js/views/coupon_form_view.js:787 +msgid "Save Changes" +msgstr "" + +#: ecommerce/static/js/views/coupon_form_view.js:802 +msgid "Create Coupon" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:35 +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:24 +msgid "Name" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:42 +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:31 +msgid "Created" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:49 +msgid "Custom Code" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:55 +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:44 +msgid "Client" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:61 +msgid "Category" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:67 +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:62 +msgid "Coupon Report" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:80 +#: ecommerce/static/js/views/course_list_view.js:25 +msgid "Search..." +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:107 +#: ecommerce/static/js/views/course_list_view.js:52 +msgid "Next" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:108 +#: ecommerce/static/js/views/course_list_view.js:53 +msgid "Previous" +msgstr "" + +#. Translators: _START_, _END_, and _TOTAL_ are placeholders. Do NOT translate +#. them. +#: ecommerce/static/js/views/coupon_list_view.js:112 +msgid "Displaying _START_ to _END_ of _TOTAL_ coupons" +msgstr "" + +#. Translators: _MAX_ is a placeholder. Do NOT translate it. +#: ecommerce/static/js/views/coupon_list_view.js:115 +msgid "(filtered from _MAX_ total coupons)" +msgstr "" + +#. Translators: _MENU_ is a placeholder. Do NOT translate it. +#: ecommerce/static/js/views/coupon_list_view.js:118 +msgid "Display _MENU_ coupons" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:55 +msgid "Free (Audit)" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:56 +msgid "Free audit track. No certificate." +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:60 +msgid "Verified and Audit" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:61 +#: ecommerce/static/js/views/course_form_view.js:67 +msgid "" +"Paid certificate track with initial verification and Verified Certificate." +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:62 +msgid "Also includes the free audit track." +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:66 +msgid "Verified Only" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:71 +msgid "Professional Education" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:72 +msgid "" +"Paid certificate track with initial verification and Professional Education " +"Certificate" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:78 +msgid "" +"Paid certificate track with initial verification and Verified Certificate, " +"and option to purchase credit" +msgstr "" + +#. Translators: _START_, _END_, and _TOTAL_ are placeholders. Do NOT translate +#. them. +#: ecommerce/static/js/views/course_list_view.js:57 +msgid "Displaying _START_ to _END_ of _TOTAL_ courses" +msgstr "" + +#. Translators: _MAX_ is a placeholder. Do NOT translate it. +#: ecommerce/static/js/views/course_list_view.js:60 +msgid "(filtered from _MAX_ total courses)" +msgstr "" + +#. Translators: _MENU_ is a placeholder. Do NOT translate it. +#: ecommerce/static/js/views/course_list_view.js:63 +msgid "Display _MENU_ courses" +msgstr "" + +#: ecommerce/static/js/views/course_list_view.js:69 +msgid "Course" +msgstr "" + +#: ecommerce/static/js/views/course_list_view.js:86 +msgid "Last Edited" +msgstr "" + +#: ecommerce/static/js/views/dynamic_catalog_view.js:74 +msgid "Seat title" +msgstr "" + +#: ecommerce/static/js/views/dynamic_catalog_view.js:78 +msgid "Seat type" +msgstr "" + +#: ecommerce/static/js/views/enterprise_coupon_detail_view.js:28 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:42 +msgid "Can be used multiple times by one customer" +msgstr "" + +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 +msgid "Create and Add More" +msgstr "" + +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:38 +msgid "Status" +msgstr "" + +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:50 +msgid "Enterprise Customer" +msgstr "" + +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:56 +msgid "Enterprise Customer Catalog" +msgstr "" + +#: ecommerce/static/js/views/form_view.js:71 +msgid "A course with the specified ID already exists." +msgstr "" + +#: ecommerce/static/js/views/form_view.js:81 +#: ecommerce/static/js/views/form_view.js:174 +msgid "Error!" +msgstr "" + +#: ecommerce/static/js/views/form_view.js:127 +msgid "Saving..." +msgstr "" + +#: ecommerce/static/js/views/form_view.js:136 +msgid "Please complete all required fields." +msgstr "" + +#: ecommerce/static/js/views/form_view.js:161 +msgid "An error occurred while saving the data." +msgstr "" + +#: ecommerce/static/js/views/offer_view.js:198 +msgid "Ellipsis" +msgstr "" + +#: ecommerce/static/js/views/offer_view.js:205 +msgid "Load the records for page " +msgstr "" + +#: ecommerce/static/js/views/offer_view.js:212 +msgid "Load the records for the next page" +msgstr "" + +#: ecommerce/static/js/views/offer_view.js:220 +msgid "Load the records for the previous page" +msgstr "" + +#: ecommerce/static/js/views/provider_selection_view.js:33 +msgid "Select" +msgstr "" + +#: ecommerce/static/js/views/provider_selection_view.js:34 +msgid "Selected" +msgstr "" + +#: ecommerce/static/vendor-extensions/oscar/js/order_actions.js:21 +msgid "Order %(order_number)s has been fulfilled." +msgstr "" + +#: ecommerce/static/vendor-extensions/oscar/js/order_actions.js:27 +msgid "Failed to fulfill order %(order_number)s: %(error)s" +msgstr "" + +#: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:24 +msgid "Refund #%(refund_id)s has been processed." +msgstr "" + +#: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:33 +msgid "Error" +msgstr "" + +#: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:36 +msgid "" +"Failed to process refund #%(refund_id)s: %(error)s. Please try again, or " +"contact the E-Commerce Development Team." +msgstr "" diff --git a/ecommerce/conf/locale/fi_FI/LC_MESSAGES/django.mo b/ecommerce/conf/locale/fi_FI/LC_MESSAGES/django.mo index 3316f6042cb..5038a62110a 100644 Binary files a/ecommerce/conf/locale/fi_FI/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/fi_FI/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/fi_FI/LC_MESSAGES/django.po b/ecommerce/conf/locale/fi_FI/LC_MESSAGES/django.po index 1483b66e3f0..992c9109c6b 100644 --- a/ecommerce/conf/locale/fi_FI/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/fi_FI/LC_MESSAGES/django.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: asd asd , 2021\n" -"Language-Team: Finnish (Finland) (http://www.transifex.com/open-edx/edx-platform/language/fi_FI/)\n" +"Language-Team: Finnish (Finland) (http://app.transifex.com/open-edx/edx-platform/language/fi_FI/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,332 +47,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -382,43 +382,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -480,150 +480,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -793,41 +803,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -835,39 +845,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -905,84 +916,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -999,7 +1010,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1008,44 +1019,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1111,6 +1122,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1143,23 +1168,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1170,35 +1195,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1248,7 +1273,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1257,14 +1282,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1295,7 +1336,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1377,11 +1418,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1426,7 +1467,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1481,7 +1522,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1817,7 +1858,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1830,38 +1871,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1873,11 +1914,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1888,25 +1929,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2023,89 +2064,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2115,11 +2165,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/fi_FI/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/fi_FI/LC_MESSAGES/djangojs.mo index 9646ffc10e6..d650d3e8965 100644 Binary files a/ecommerce/conf/locale/fi_FI/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/fi_FI/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/fi_FI/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/fi_FI/LC_MESSAGES/djangojs.po index 554fc9aebcb..964a32de77e 100644 --- a/ecommerce/conf/locale/fi_FI/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/fi_FI/LC_MESSAGES/djangojs.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: asd asd , 2021\n" -"Language-Team: Finnish (Finland) (http://www.transifex.com/open-edx/edx-platform/language/fi_FI/)\n" +"Language-Team: Finnish (Finland) (http://app.transifex.com/open-edx/edx-platform/language/fi_FI/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,11 +317,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -463,7 +463,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/fil_PH/LC_MESSAGES/django.mo b/ecommerce/conf/locale/fil_PH/LC_MESSAGES/django.mo new file mode 100644 index 00000000000..2b7c6f7ed9e Binary files /dev/null and b/ecommerce/conf/locale/fil_PH/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/fil_PH/LC_MESSAGES/django.po b/ecommerce/conf/locale/fil_PH/LC_MESSAGES/django.po new file mode 100644 index 00000000000..472fbd7c3d6 --- /dev/null +++ b/ecommerce/conf/locale/fil_PH/LC_MESSAGES/django.po @@ -0,0 +1,4059 @@ +# #-#-#-#-# django.po (ecommerce) #-#-#-#-# +# edX translation file +# Copyright (C) 2018 edX +# This file is distributed under the GNU AFFERO GENERAL PUBLIC LICENSE. +# +# Translators: +# Translators: +# Translators: +# Translators: +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: edx-platform\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" +"PO-Revision-Date: 2015-06-18 01:39+0000\n" +"Last-Translator: edx_transifex_bot \n" +"Language-Team: Filipino (Philippines) (http://app.transifex.com/open-edx/edx-platform/language/fil_PH/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fil_PH\n" +"Plural-Forms: nplurals=2; plural=(n == 1 || n==2 || n==3) || (n % 10 != 4 || n % 10 != 6 || n % 10 != 9);\n" + +#: ecommerce/core/admin.py:25 +msgid "Personal info" +msgstr "" + +#: ecommerce/core/admin.py:26 +msgid "Permissions" +msgstr "" + +#: ecommerce/core/admin.py:28 +msgid "Important dates" +msgstr "" + +#. Translators: "Waffle" is the name of a third-party library. It should not +#. be translated +#: ecommerce/core/admin.py:35 +#, python-brace-format +msgid "" +"User administration has been disabled due to the load on the database. This " +"functionality can be restored by activating the {switch_name} Waffle switch." +" Be careful when re-activating this switch!" +msgstr "" + +#: ecommerce/core/models.py:41 +msgid "LMS base url for custom site/microsite" +msgstr "" + +#: ecommerce/core/models.py:42 +msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" +msgstr "" + +#: ecommerce/core/models.py:47 +msgid "Path to custom site theme" +msgstr "" + +#: ecommerce/core/models.py:54 +msgid "Payment processors" +msgstr "" + +#: ecommerce/core/models.py:55 +msgid "Comma-separated list of processor names: 'cybersource,paypal'" +msgstr "" + +#: ecommerce/core/models.py:61 +msgid "Client-side payment processor" +msgstr "" + +#: ecommerce/core/models.py:62 +msgid "Processor that will be used for client-side payments" +msgstr "" + +#: ecommerce/core/models.py:68 +msgid "OAuth settings" +msgstr "" + +#: ecommerce/core/models.py:69 +msgid "JSON string containing OAuth backend settings." +msgstr "" + +#: ecommerce/core/models.py:75 +msgid "Segment key" +msgstr "" + +#: ecommerce/core/models.py:76 +msgid "Segment write/API key." +msgstr "" + +#: ecommerce/core/models.py:82 +msgid "From email" +msgstr "" + +#: ecommerce/core/models.py:83 +msgid "Address from which emails are sent." +msgstr "" + +#: ecommerce/core/models.py:89 +msgid "Enable enrollment codes" +msgstr "" + +#: ecommerce/core/models.py:90 +msgid "Enable the creation of enrollment codes." +msgstr "" + +#: ecommerce/core/models.py:95 +msgid "Payment support email" +msgstr "" + +#: ecommerce/core/models.py:96 +msgid "Contact email for payment support issues." +msgstr "" + +#: ecommerce/core/models.py:102 +msgid "Payment support url" +msgstr "" + +#: ecommerce/core/models.py:103 +msgid "URL for payment support issues." +msgstr "" + +#: ecommerce/core/models.py:108 +msgid "UTM Cookie Name" +msgstr "" + +#: ecommerce/core/models.py:109 +msgid "Name of cookie storing UTM data." +msgstr "" + +#: ecommerce/core/models.py:115 +msgid "Affiliate Cookie Name" +msgstr "" + +#: ecommerce/core/models.py:116 +msgid "Name of cookie storing affiliate data." +msgstr "" + +#: ecommerce/core/models.py:122 +msgid "Send refund email notification" +msgstr "" + +#: ecommerce/core/models.py:127 +msgid "Enable SDN check" +msgstr "" + +#: ecommerce/core/models.py:128 +msgid "Enable SDN check at checkout." +msgstr "" + +#: ecommerce/core/models.py:132 +msgid "[Deprecated] US Treasury SDN API URL" +msgstr "" + +#: ecommerce/core/models.py:137 +msgid "[Deprecated] US Treasury SDN API key" +msgstr "" + +#: ecommerce/core/models.py:142 +msgid "SDN lists" +msgstr "" + +#: ecommerce/core/models.py:143 +msgid "A comma-separated list of Treasury OFAC lists to check against." +msgstr "" + +#: ecommerce/core/models.py:148 +msgid "Require Account Activation" +msgstr "" + +#: ecommerce/core/models.py:149 +msgid "" +"Require users to activate their account before allowing them to redeem a " +"coupon." +msgstr "" + +#: ecommerce/core/models.py:153 +msgid "Optimizely snippet source URL" +msgstr "" + +#: ecommerce/core/models.py:154 +msgid "This script will be loaded on every page." +msgstr "" + +#: ecommerce/core/models.py:159 +msgid "Base Cookie Domain" +msgstr "" + +#: ecommerce/core/models.py:160 +msgid "Base cookie domain used to share cookies across services." +msgstr "" + +#: ecommerce/core/models.py:166 +msgid "Enable embargo check" +msgstr "" + +#: ecommerce/core/models.py:167 +msgid "Enable embargo check at checkout." +msgstr "" + +#: ecommerce/core/models.py:171 +msgid "Discovery API URL" +msgstr "" + +#. Translators: Do not translate "Apple Pay" +#: ecommerce/core/models.py:177 +msgid "Enable Apple Pay" +msgstr "" + +#: ecommerce/core/models.py:181 +msgid "Enable Partial Program Offer" +msgstr "" + +#: ecommerce/core/models.py:182 +msgid "" +"Enable the application of program offers to remaining unenrolled or " +"unverified courses" +msgstr "" + +#: ecommerce/core/models.py:187 +msgid "Hubspot Portal Secret Key" +msgstr "" + +#: ecommerce/core/models.py:188 +msgid "Secret key for Hubspot portal authentication" +msgstr "" + +#: ecommerce/core/models.py:193 +msgid "Enable Microfrontend for Basket Page" +msgstr "" + +#: ecommerce/core/models.py:194 +msgid "" +"Use the microfrontend implementation of the basket page instead of the " +"server-side template" +msgstr "" + +#: ecommerce/core/models.py:199 +msgid "Payment Microfrontend URL" +msgstr "" + +#: ecommerce/core/models.py:200 +msgid "" +"URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " +"Page is set)" +msgstr "" + +#: ecommerce/core/models.py:446 +msgid "last name" +msgstr "" + +#: ecommerce/core/models.py:449 +msgid "first name" +msgstr "" + +#: ecommerce/core/models.py:450 +msgid "Full Name" +msgstr "" + +#: ecommerce/core/models.py:456 +msgid "LMS user id" +msgstr "" + +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:10 +msgid "Name" +msgstr "" + +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 +msgid "EnterpriseCustomer UUID" +msgstr "" + +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 +msgid "UUID for an EnterpriseCustomer from the Enterprise Service." +msgstr "" + +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 +msgid "Coupon does not exist." +msgstr "" + +#: ecommerce/coupons/views.py:81 +msgid "This coupon code is not yet valid." +msgstr "" + +#: ecommerce/coupons/views.py:83 +msgid "This coupon code has expired." +msgstr "" + +#: ecommerce/coupons/views.py:95 +#, python-brace-format +msgid "Product [{product}] not available for purchase." +msgstr "" + +#: ecommerce/coupons/views.py:100 +msgid "This coupon code is no longer available." +msgstr "" + +#: ecommerce/coupons/views.py:120 +msgid "This coupon code is invalid." +msgstr "" + +#: ecommerce/coupons/views.py:127 +msgid "The voucher is not applicable to your current basket." +msgstr "" + +#: ecommerce/coupons/views.py:137 +msgid "Welcome to edX" +msgstr "" + +#: ecommerce/coupons/views.py:138 +msgid "" +"Please choose from the courses selected by your organization to start " +"learning." +msgstr "" + +#: ecommerce/coupons/views.py:168 +msgid "Code not provided." +msgstr "" + +#: ecommerce/coupons/views.py:170 +msgid "SKU not provided." +msgstr "" + +#: ecommerce/coupons/views.py:181 +msgid "The product does not exist." +msgstr "" + +#: ecommerce/coupons/views.py:195 +msgid "You are not eligible to use this coupon." +msgstr "" + +#: ecommerce/coupons/views.py:210 +msgid "Couldn't find a matching Enterprise Customer for this coupon." +msgstr "" + +#: ecommerce/coupons/views.py:218 +msgid "" +"This coupon is not valid for purchasing a program. Try using this on an " +"individual course in the program. If you need assistance, contact edX " +"support." +msgstr "" + +#: ecommerce/coupons/views.py:245 +msgid "Invalid data sharing consent token provided." +msgstr "" + +#: ecommerce/coupons/views.py:265 +#, python-brace-format +msgid "You have already purchased {course} seat." +msgstr "" + +#: ecommerce/coupons/views.py:289 +#, python-brace-format +msgid "A discount has been applied, courtesy of {enterprise_customer_name}." +msgstr "" + +#: ecommerce/coupons/views.py:299 +msgid "This coupon code is not valid for this course. Try a different course." +msgstr "" + +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 +#: ecommerce/extensions/payment/models.py:68 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:14 +msgid "Site" +msgstr "" + +#: ecommerce/courses/models.py:40 +msgid "" +"Last date/time on which verification for this product can be submitted." +msgstr "" + +#: ecommerce/courses/publishers.py:62 +#, python-brace-format +msgid "Failed to publish commerce data for {course_id} to LMS." +msgstr "" + +#: ecommerce/courses/utils.py:138 +msgid "Audit" +msgstr "" + +#: ecommerce/courses/utils.py:139 +msgid "Credit" +msgstr "" + +#: ecommerce/courses/utils.py:140 +msgid "Honor" +msgstr "" + +#: ecommerce/courses/utils.py:141 +msgid "Professional" +msgstr "" + +#: ecommerce/courses/utils.py:142 +msgid "Verified" +msgstr "" + +#: ecommerce/courses/utils.py:143 +msgid "Executive Education" +msgstr "" + +#: ecommerce/courses/utils.py:144 +msgid "Paid Executive Education" +msgstr "" + +#: ecommerce/courses/utils.py:145 +msgid "Unpaid Executive Education" +msgstr "" + +#: ecommerce/courses/utils.py:146 +msgid "Paid Bootcamp" +msgstr "" + +#: ecommerce/courses/utils.py:147 +msgid "Unpaid Bootcamp" +msgstr "" + +#: ecommerce/credit/views.py:40 +msgid "" +"An error has occurred. We could not confirm that you are eligible for course" +" credit. Try the transaction again." +msgstr "" + +#: ecommerce/credit/views.py:61 +#, python-brace-format +msgid "" +"Credit is not currently available for \"{course_name}\". If you are " +"currently enrolled in the course, please try again after all grading is " +"complete. If you need additional assistance, please contact the {site_name} " +"Support Team." +msgstr "" + +#: ecommerce/credit/views.py:75 +msgid "" +"An error has occurred. We could not confirm that the institution you " +"selected offers this course credit. Try the transaction again." +msgstr "" + +#: ecommerce/enterprise/benefits.py:24 +#, python-format +msgid "%d%% enterprise discount" +msgstr "" + +#: ecommerce/enterprise/benefits.py:36 +#, python-brace-format +msgid "{value} fixed-price enterprise discount" +msgstr "" + +#: ecommerce/enterprise/benefits.py:45 +#: ecommerce/extensions/payment/models.py:86 ecommerce/invoice/models.py:25 +#: ecommerce/programs/constants.py:15 +msgid "Percentage" +msgstr "" + +#: ecommerce/enterprise/benefits.py:46 +#: ecommerce/extensions/payment/models.py:87 +#: ecommerce/programs/constants.py:16 +msgid "Absolute" +msgstr "" + +#: ecommerce/enterprise/conditions.py:216 +#, python-brace-format +msgid "" +"This coupon has been made available through {new_enterprise}. To redeem this" +" coupon, you must first logout. When you log back in, please select " +"{new_enterprise} as your enterprise and try again." +msgstr "" + +#: ecommerce/enterprise/conditions.py:370 +msgid "" +"This code is not valid with your email. Please login with the correct email " +"assigned to the code or contact your Learning Manager for additional " +"questions." +msgstr "" + +#: ecommerce/enterprise/forms.py:38 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 +msgid "Enterprise Customer UUID" +msgstr "" + +#: ecommerce/enterprise/forms.py:39 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 +msgid "Enterprise Customer Catalog UUID" +msgstr "" + +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 +msgid "Discount Type" +msgstr "" + +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 +msgid "Discount Value" +msgstr "" + +#: ecommerce/enterprise/forms.py:45 +msgid "Contract Discount Type" +msgstr "" + +#: ecommerce/enterprise/forms.py:48 +msgid "Contract Discount" +msgstr "" + +#: ecommerce/enterprise/forms.py:51 +msgid "Prepaid Invoice Amount" +msgstr "" + +#: ecommerce/enterprise/forms.py:53 +msgid "Salesforce Opportunity ID" +msgstr "" + +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 +msgid "Emails Addresses" +msgstr "" + +#: ecommerce/enterprise/forms.py:59 +msgid "Comma separated emails which will receive the offer usage alerts" +msgstr "" + +#: ecommerce/enterprise/forms.py:64 +msgid "Frequency for offer usage emails" +msgstr "" + +#: ecommerce/enterprise/forms.py:79 +msgid "The maximum number of enrollments that can redeem this offer." +msgstr "" + +#: ecommerce/enterprise/forms.py:80 +msgid "The maximum USD dollar amount that can be redeemed by this offer." +msgstr "" + +#: ecommerce/enterprise/forms.py:81 +msgid "" +"The maximum number of enrollments, by a user, that can redeem this offer." +msgstr "" + +#: ecommerce/enterprise/forms.py:82 +msgid "" +"The maximum USD dollar amount that can be redeemed using this offer by a " +"user." +msgstr "" + +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 +msgid "Start Date" +msgstr "" + +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 +msgid "End Date" +msgstr "" + +#: ecommerce/enterprise/forms.py:87 +msgid "Enrollment Limit" +msgstr "" + +#: ecommerce/enterprise/forms.py:88 +msgid "Bookings Limit" +msgstr "" + +#: ecommerce/enterprise/forms.py:89 +msgid "Per User Enrollment Limit" +msgstr "" + +#: ecommerce/enterprise/forms.py:90 +msgid "Per User Bookings Limit" +msgstr "" + +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 +#, python-brace-format +msgid "" +"Ensure new value must be greater than or equal to " +"consumed({offer_enrollments}) value." +msgstr "" + +#: ecommerce/enterprise/forms.py:166 +msgid "" +"Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " +"006." +msgstr "" + +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 +msgid "Ensure this value is greater than or equal to 0." +msgstr "" + +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 +#, python-brace-format +msgid "" +"Ensure new value must be greater than or equal to " +"consumed({consumed_discount:.2f}) value." +msgstr "" + +#: ecommerce/enterprise/forms.py:265 +#, python-brace-format +msgid "Given email address {email} is not a valid email." +msgstr "" + +#: ecommerce/enterprise/forms.py:290 +msgid "An offer already exists for this Enterprise & Catalog combination." +msgstr "" + +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 +#: ecommerce/programs/forms.py:73 +msgid "Percentage discounts cannot be greater than 100%." +msgstr "" + +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 +msgid "A start date must be specified when specifying an end date." +msgstr "" + +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 +msgid "The start date must occur before the end date." +msgstr "" + +#: ecommerce/enterprise/forms.py:307 +msgid "More than 2 digits after the decimal not allowed for absolute value." +msgstr "" + +#: ecommerce/enterprise/forms.py:312 +msgid "This field is required when contract discount type is absolute." +msgstr "" + +#: ecommerce/enterprise/forms.py:337 +msgid "Discount of type {} provided by {} for {}." +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterprise_coupon_app.html:5 +msgid "Enterprise Coupon Codes" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:9 +#, python-format +msgid "Edit Enterprise Offer: %(enterprise_customer_name)s" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:14 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:47 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:60 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:20 +msgid "Create Enterprise Offer" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:30 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:6 +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:17 +#: ecommerce/templates/edx/partials/_administration_menu.html:14 +msgid "Enterprise Offers" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:34 +#: ecommerce/programs/templates/programs/programoffer_form.html:34 +#: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:11 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:268 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:56 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:69 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:74 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:85 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:9 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:19 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:25 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:30 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:695 +msgid "Edit" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:36 +#: ecommerce/programs/templates/programs/programoffer_form.html:36 +msgid "Create" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:45 +msgid "Edit Enterprise Offer" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:58 +#: ecommerce/programs/templates/programs/programoffer_form.html:58 +msgid "Save Changes" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:62 +#: ecommerce/programs/templates/programs/programoffer_form.html:62 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:323 +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:20 +msgid "Cancel" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:76 +#, python-format +msgid "" +"\n" +" %(platform_name)s Enterprise Offer Administration Tool\n" +" " +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:26 +msgid "Current enterprise offers" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:29 +msgid "Enterprise Customer Name" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:32 +#: ecommerce/programs/templates/programs/programoffer_list.html:31 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:629 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:681 +msgid "Type" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:33 +#: ecommerce/programs/templates/programs/programoffer_list.html:32 +msgid "Value" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:34 +#: ecommerce/programs/templates/programs/programoffer_list.html:33 +msgid "Start" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:35 +#: ecommerce/programs/templates/programs/programoffer_list.html:34 +msgid "End" +msgstr "" + +#: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:64 +#, python-format +msgid "" +"\n" +" %(platform_name)s Enterprise Offer Administration Tool\n" +" " +msgstr "" + +#: ecommerce/enterprise/utils.py:239 +#, python-brace-format +msgid "SKU {sku} does not exist." +msgstr "" + +#: ecommerce/enterprise/utils.py:248 +#, python-brace-format +msgid "There is no Enterprise Customer associated with SKU {sku}." +msgstr "" + +#: ecommerce/enterprise/utils.py:256 +#, python-brace-format +msgid "" +"If you have concerns about sharing your data, please contact your " +"administrator at {enterprise}." +msgstr "" + +#: ecommerce/enterprise/utils.py:259 +#, python-brace-format +msgid "" +"If you have concerns about sharing your data, please contact your " +"administrator at {enterprise} at {contact_info}." +msgstr "" + +#: ecommerce/enterprise/utils.py:265 +#, python-brace-format +msgid "Enrollment in {course_name} was not complete." +msgstr "" + +#: ecommerce/enterprise/views.py:39 +msgid "Enterprise offer updated!" +msgstr "" + +#: ecommerce/enterprise/views.py:62 +msgid "Enterprise offer created!" +msgstr "" + +#: ecommerce/extensions/api/exceptions.py:9 +msgid "You can't check out with an empty basket." +msgstr "" + +#: ecommerce/extensions/api/exceptions.py:12 +msgid "" +"We couldn't locate the identification code necessary to find one of your " +"products." +msgstr "" + +#: ecommerce/extensions/api/exceptions.py:15 +msgid "We couldn't find one of the products you're looking for." +msgstr "" + +#: ecommerce/extensions/api/exceptions.py:18 +msgid "One of the products you're trying to order is unavailable." +msgstr "" + +#: ecommerce/extensions/api/exceptions.py:21 +msgid "" +"We couldn't find enough information about you to perform the calculation." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:259 +msgid "EXPIRED" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:261 +msgid "INACTIVE" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:262 +msgid "ACTIVE" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:703 +msgid "Products must have a certificate type." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 +msgid "Products must have a price." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:713 +msgid "You need to provide a course UUID to create Course Entitlements." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:747 +msgid "Products must indicate whether ID verification is required." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:818 +#, python-brace-format +msgid "Invalid product class [{product_class}] requested." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:850 +#, python-brace-format +msgid "" +"Course [{course_id}] was not published to LMS because the switch " +"[publish_course_modes_to_lms] is disabled. To avoid ghost SKUs, data has not" +" been saved." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:1548 +msgid "Enrollment code" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:1549 +msgid "Discount code" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:2046 +msgid "Invalid order number or order {} does not exists." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:2101 +msgid "New coupon voucher assignment Failure. Error: {}" +msgstr "" + +#: ecommerce/extensions/api/serializers.py:2119 +msgid "" +"Your order {} can not be refunded as '{}' coupon are not supported to " +"refund." +msgstr "" + +#: ecommerce/extensions/api/serializers.py:2150 +msgid "Could note create new voucher for the order: {}" +msgstr "" + +#: ecommerce/extensions/api/v2/views/baskets.py:445 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 +msgid "No SKUs provided." +msgstr "" + +#: ecommerce/extensions/api/v2/views/baskets.py:456 +#: ecommerce/extensions/basket/views.py:467 +#, python-brace-format +msgid "Products with SKU(s) [{skus}] do not exist." +msgstr "" + +#: ecommerce/extensions/api/v2/views/baskets.py:467 +msgid "Provide username or is_anonymous query param, but not both" +msgstr "" + +#: ecommerce/extensions/api/v2/views/products.py:54 +#, python-brace-format +msgid "Product API only supports {http_method} for {product_class} products." +msgstr "" + +#: ecommerce/extensions/api/v2/views/products.py:69 +#, python-brace-format +msgid "Missing or bad value for: [{name}]." +msgstr "" + +#: ecommerce/extensions/basket/models.py:119 +#, python-brace-format +msgid "{id} - {status} basket (owner: {owner}, lines: {num_lines})" +msgstr "" + +#: ecommerce/extensions/basket/models.py:142 +#: ecommerce/extensions/payment/models.py:28 +#: ecommerce/templates/oscar/basket/basket.html:9 +msgid "Basket" +msgstr "" + +#: ecommerce/extensions/basket/models.py:144 +msgid "Attribute Type" +msgstr "" + +#: ecommerce/extensions/basket/models.py:146 +msgid "Text Attribute" +msgstr "" + +#: ecommerce/extensions/basket/utils.py:155 +msgid "" +"Due to export controls, we cannot allow you to access this course at this " +"time." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:245 +msgid "Click here to just purchase an enrollment for yourself" +msgstr "" + +#: ecommerce/extensions/basket/utils.py:248 +msgid "Click here to purchase multiple seats in this course" +msgstr "" + +#: ecommerce/extensions/basket/utils.py:498 +#, python-brace-format +msgid "Coupon code '{code}' has expired." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:502 +#, python-brace-format +msgid "Coupon code '{code}' is not active." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:508 +#, python-brace-format +msgid "Coupon code '{code}' is not available. {msg}" +msgstr "" + +#: ecommerce/extensions/basket/utils.py:514 +#, python-brace-format +msgid "Coupon code '{code}' is not valid for this basket." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:527 +#, python-brace-format +msgid "" +"Coupon code '{code}' is not valid for this basket for a bundled purchase." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:582 +#, python-brace-format +msgid "Coupon code '{code}' added to basket." +msgstr "" + +#: ecommerce/extensions/basket/utils.py:585 +#, python-brace-format +msgid "Basket does not qualify for coupon code {code}." +msgstr "" + +#: ecommerce/extensions/basket/views.py:206 +#, python-brace-format +msgid "Could not apply the code '{code}'; it requires data sharing consent." +msgstr "" + +#: ecommerce/extensions/basket/views.py:297 +msgid "" +"After you complete your order you will be able to select course dates from " +"your dashboard." +msgstr "" + +#: ecommerce/extensions/basket/views.py:312 +msgid "" +"After you complete your order you will be automatically enrolled in the " +"verified track of the course." +msgstr "" + +#: ecommerce/extensions/basket/views.py:316 +msgid "After you complete your order you will receive credit for your course." +msgstr "" + +#: ecommerce/extensions/basket/views.py:319 +msgid "" +"After you complete your order you will be automatically enrolled in the " +"course." +msgstr "" + +#: ecommerce/extensions/basket/views.py:323 +#, python-brace-format +msgid "" +"{paragraph_start}By purchasing, you and your organization agree to the " +"following terms:{paragraph_end} {ul_start} {li_start}Each code is valid for " +"the one course covered and can be used only one time.{li_end} {li_start}You " +"are responsible for distributing codes to your learners in your " +"organization.{li_end} {li_start}Each code will expire in one year from date " +"of purchase or, if earlier, once the course is closed.{li_end} {li_start}If " +"a course is not designated as self-paced, you should confirm that a course " +"run is available before expiration. {li_end} {li_start}You may not resell " +"codes to third parties.{li_end} {li_start}All edX for Business Sales are " +"final and not eligible for refunds.{li_end}{ul_end} {paragraph_start}You " +"will receive an email at {user_email} with your enrollment code(s). " +"{paragraph_end}" +msgstr "" + +#: ecommerce/extensions/basket/views.py:361 +#, python-brace-format +msgid "" +"{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " +"you are purchasing a single code for someone else, please continue with " +"checkout. However, if you are the learner {link_start}go back{link_end} to " +"enroll directly.{paragraph_end}" +msgstr "" + +#: ecommerce/extensions/basket/views.py:439 +msgid "You have already purchased these products" +msgstr "" + +#: ecommerce/extensions/basket/views.py:484 +msgid "No product is available to buy." +msgstr "" + +#: ecommerce/extensions/basket/views.py:902 +msgid "quantity successfully updated" +msgstr "" + +#: ecommerce/extensions/basket/views.py:921 +msgid "" +"Your basket couldn't be updated. Please correct any validation errors below." +msgstr "" + +#: ecommerce/extensions/basket/views.py:975 +#, python-brace-format +msgid "You have already added coupon code '{code}' to your basket." +msgstr "" + +#: ecommerce/extensions/basket/views.py:1051 +#, python-brace-format +msgid "Coupon code '{code}' does not exist." +msgstr "" + +#: ecommerce/extensions/basket/views.py:1136 +#, python-format +msgid "No coupon found with id '%s'" +msgstr "" + +#: ecommerce/extensions/basket/views.py:1140 +#, python-format +msgid "Coupon code '%s' was removed from your basket." +msgstr "" + +#: ecommerce/extensions/catalogue/models.py:69 +msgid "Last date/time on which this product can be purchased." +msgstr "" + +#: ecommerce/extensions/dashboard/forms.py:9 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:48 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:72 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:52 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:59 +#: ecommerce/templates/oscar/dashboard/users/detail.html:40 +msgid "Username" +msgstr "" + +#: ecommerce/extensions/dashboard/forms.py:10 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:73 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:60 +#: ecommerce/templates/oscar/dashboard/users/detail.html:48 +msgid "Email" +msgstr "" + +#: ecommerce/extensions/dashboard/orders/views.py:74 +#, python-brace-format +msgid "" +"{link_start}Refund #{refund_id}{link_end} created! Click " +"{link_start}here{link_end} to view it." +msgstr "" + +#: ecommerce/extensions/dashboard/orders/views.py:78 +msgid "" +"A refund cannot be created for these lines. They may have already been " +"refunded." +msgstr "" + +#: ecommerce/extensions/dashboard/refunds/apps.py:13 +msgid "Refunds Dashboard" +msgstr "" + +#: ecommerce/extensions/dashboard/refunds/forms.py:15 +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:9 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:55 +msgid "Refund ID" +msgstr "" + +#: ecommerce/extensions/dashboard/refunds/forms.py:16 +#: ecommerce/extensions/refund/models.py:72 +#: ecommerce/extensions/refund/models.py:316 +#: ecommerce/extensions/voucher/utils.py:222 +#: ecommerce/extensions/voucher/utils.py:281 +#: ecommerce/extensions/voucher/utils.py:318 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:71 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:72 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:141 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:596 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:71 +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:13 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:75 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:111 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:58 +#: ecommerce/templates/oscar/dashboard/users/detail.html:142 +msgid "Status" +msgstr "" + +#: ecommerce/extensions/dashboard/users/views.py:48 +msgid "Failed to retrieve enrollment data." +msgstr "" + +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:32 +msgid "Day 3" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:33 +msgid "Day 10" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:34 +msgid "Day 19" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:40 +msgid "Assign" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:41 +msgid "Remind" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:42 +msgid "Revoke" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:77 +msgid "Automatic" +msgstr "" + +#: ecommerce/extensions/offer/constants.py:78 +msgid "Manual" +msgstr "" + +#: ecommerce/extensions/offer/models.py:447 +msgid "Course Catalog ID from the Discovery Service." +msgstr "" + +#: ecommerce/extensions/offer/models.py:458 +msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." +msgstr "" + +#: ecommerce/extensions/offer/models.py:590 +msgid "EnterpriseCustomer Name" +msgstr "" + +#: ecommerce/extensions/offer/models.py:595 +msgid "EnterpriseCustomerCatalog UUID" +msgstr "" + +#: ecommerce/extensions/offer/models.py:600 +#: ecommerce/extensions/voucher/utils.py:53 +#: ecommerce/extensions/voucher/utils.py:190 +#: ecommerce/extensions/voucher/utils.py:270 +#: ecommerce/extensions/voucher/utils.py:326 +#: ecommerce/extensions/voucher/utils.py:335 +#: ecommerce/extensions/voucher/utils.py:341 ecommerce/programs/forms.py:22 +#: ecommerce/programs/templates/programs/programoffer_list.html:30 +msgid "Program UUID" +msgstr "" + +#: ecommerce/extensions/offer/models.py:613 +msgid "Email to user pending." +msgstr "" + +#: ecommerce/extensions/offer/models.py:614 +msgid "Code successfully assigned to user." +msgstr "" + +#: ecommerce/extensions/offer/models.py:615 +msgid "Code has been redeemed by user." +msgstr "" + +#: ecommerce/extensions/offer/models.py:616 +msgid "Email to user bounced." +msgstr "" + +#: ecommerce/extensions/offer/models.py:617 +msgid "Code has been revoked for this user." +msgstr "" + +#: ecommerce/extensions/offer/models.py:663 +msgid "Make a particular template version active." +msgstr "" + +#: ecommerce/extensions/offer/models.py:883 +msgid "Email has been sent." +msgstr "" + +#: ecommerce/extensions/offer/models.py:884 +msgid "This user should receive email" +msgstr "" + +#: ecommerce/extensions/offer/utils.py:97 +#, python-brace-format +msgid "{benefit_value}%" +msgstr "" + +#: ecommerce/extensions/offer/utils.py:100 +#, python-brace-format +msgid "${benefit_value}" +msgstr "" + +#. Translators: "Waffle" is the name of a third-party library. It should not +#. be translated +#: ecommerce/extensions/order/admin.py:35 +#, python-brace-format +msgid "" +"Order administration has been disabled due to the load on the database. This" +" functionality can be restored by activating the {switch_name} Waffle " +"switch. Be careful when re-activating this switch!" +msgstr "" + +#: ecommerce/extensions/order/benefits.py:22 +#, python-format +msgid "%d%% discount for manual course enrollment order" +msgstr "" + +#: ecommerce/extensions/order/models.py:39 +#: ecommerce/extensions/payment/models.py:26 +msgid "Payment Processor" +msgstr "" + +#: ecommerce/extensions/order/models.py:51 +msgid "" +"It expect that the order numbers stuck in fulfillment error state will be" +" provided in a txt file format one per line." +msgstr "" + +#: ecommerce/extensions/partner/admin.py:28 +msgid "Click 'Save and Continue Editing' to add stock records" +msgstr "" + +#: ecommerce/extensions/partner/models.py:22 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:193 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:74 +msgid "Partner" +msgstr "" + +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 +msgid "Partners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:8 +msgid "American Express" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 +msgid "Discover" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 +msgid "MasterCard" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 +msgid "Visa" +msgstr "" + +#: ecommerce/extensions/payment/exceptions.py:8 +msgid "We don't support the payment option you selected." +msgstr "" + +#: ecommerce/extensions/payment/forms.py:31 +msgid "Choose country" +msgstr "" + +#. Translators: This is a string added next to the name of the required +#. fields on the payment form. For example, the first name field is +#. required, so this would read "First name (required)". +#: ecommerce/extensions/payment/forms.py:105 +#, python-brace-format +msgid "{label} (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:111 +msgid "Organization (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:124 +msgid "" +"I am purchasing on behalf of my employer or other professional organization" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:141 +#: ecommerce/extensions/payment/forms.py:218 +#: ecommerce/extensions/payment/views/__init__.py:87 +msgid "" +"There was a problem retrieving your basket. Refresh the page to try again." +msgstr "" + +#: ecommerce/extensions/payment/forms.py:144 +msgid "First Name (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:145 +msgid "Last Name (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:146 +msgid "Address (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:147 +msgid "Suite/Apartment Number" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:148 +msgid "City (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:151 +msgid "State/Province" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:152 +msgid "Zip/Postal Code" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:153 +msgid "Country (required)" +msgstr "" + +#: ecommerce/extensions/payment/forms.py:180 +#: ecommerce/extensions/payment/forms.py:182 +#: ecommerce/extensions/payment/forms.py:193 +msgid "This field is required." +msgstr "" + +#: ecommerce/extensions/payment/forms.py:199 +msgid "" +"Postal codes for the U.S. and Canada are limited to nine (9) characters." +msgstr "" + +#: ecommerce/extensions/payment/models.py:27 +msgid "Transaction ID" +msgstr "" + +#: ecommerce/extensions/payment/models.py:36 +msgid "Payment Processor Response" +msgstr "" + +#: ecommerce/extensions/payment/models.py:37 +msgid "Payment Processor Responses" +msgstr "" + +#: ecommerce/extensions/payment/models.py:54 +msgid "" +"Number of times to retry failing Paypal client actions (e.g., payment " +"creation, payment execution)" +msgstr "" + +#: ecommerce/extensions/payment/models.py:112 +msgid "More than 10 digits before the decimal not allowed for fixed value." +msgstr "" + +#: ecommerce/extensions/payment/models.py:118 +msgid "More than 2 digits after the decimal not allowed for fixed value." +msgstr "" + +#: ecommerce/extensions/payment/models.py:126 +msgid "Percentage greater than 100 not allowed." +msgstr "" + +#. Translators: This is a string placed in the middle of a truncated string +#. to indicate that truncation has occurred. For example, if a title may only +#. be at most 11 characters long, "A Very Long Title" (17 characters) would be +#. truncated to "A Ve...itle". +#: ecommerce/extensions/payment/utils.py:77 +msgid "..." +msgstr "" + +#: ecommerce/extensions/payment/views/cybersource.py:368 +msgid "transaction declined" +msgstr "" + +#. Translators: "Waffle" is the name of a third-party library. It should not +#. be translated +#: ecommerce/extensions/refund/admin.py:36 +#, python-brace-format +msgid "" +"Refund administration has been disabled due to the load on the database. " +"This functionality can be restored by activating the {switch_name} Waffle " +"switch. Be careful when re-activating this switch!" +msgstr "" + +#: ecommerce/extensions/refund/models.py:67 +msgid "Order" +msgstr "" + +#: ecommerce/extensions/refund/models.py:68 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:680 +msgid "User" +msgstr "" + +#: ecommerce/extensions/refund/models.py:69 +msgid "Total Credit (excl. tax)" +msgstr "" + +#: ecommerce/extensions/refund/models.py:70 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:200 +msgid "Currency" +msgstr "" + +#: ecommerce/extensions/refund/models.py:308 +msgid "Refund" +msgstr "" + +#: ecommerce/extensions/refund/models.py:311 +msgid "Order Line" +msgstr "" + +#: ecommerce/extensions/refund/models.py:313 +msgid "Line Credit (excl. tax)" +msgstr "" + +#: ecommerce/extensions/refund/models.py:314 +#: ecommerce/templates/edx/checkout/receipt.html:103 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:50 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:108 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:133 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:164 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:138 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:108 +msgid "Quantity" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:40 +msgid "Can be used once by one customer" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:41 +msgid "Can be used multiple times by multiple customers" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:42 +msgid "Can only be used once per customer" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:43 +msgid "Can be used multiple times by one customer" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:45 +msgid "Usage" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:48 +msgid "Is Public Code Batch" +msgstr "" + +#: ecommerce/extensions/voucher/models.py:49 +msgid "Should this code batch be public or private for assignment." +msgstr "" + +#: ecommerce/extensions/voucher/models.py:63 +msgid "This voucher is assigned to another user." +msgstr "" + +#: ecommerce/extensions/voucher/tests/test_utils.py:215 +#: ecommerce/extensions/voucher/utils.py:76 +#: ecommerce/extensions/voucher/utils.py:318 +msgid "Redeemed" +msgstr "" + +#: ecommerce/extensions/voucher/tests/test_utils.py:379 +#: ecommerce/extensions/voucher/tests/test_utils.py:384 +#: ecommerce/extensions/voucher/utils.py:95 +#: ecommerce/extensions/voucher/utils.py:161 +#: ecommerce/templates/edx/checkout/receipt.html:135 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 +msgid "Discount" +msgstr "" + +#: ecommerce/extensions/voucher/tests/test_utils.py:379 +#: ecommerce/extensions/voucher/tests/test_utils.py:384 +#: ecommerce/extensions/voucher/utils.py:95 +#: ecommerce/extensions/voucher/utils.py:161 +msgid "Enrollment" +msgstr "" + +#: ecommerce/extensions/voucher/tests/test_utils.py:380 +#: ecommerce/extensions/voucher/tests/test_utils.py:388 +#: ecommerce/extensions/voucher/utils.py:96 +#: ecommerce/extensions/voucher/utils.py:165 +#, python-brace-format +msgid "{percentage} %" +msgstr "" + +#: ecommerce/extensions/voucher/tests/test_utils.py:544 +#: ecommerce/extensions/voucher/utils.py:78 +msgid "Inactive" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:53 +#: ecommerce/extensions/voucher/utils.py:192 +#: ecommerce/extensions/voucher/utils.py:271 +#: ecommerce/extensions/voucher/utils.py:329 +#: ecommerce/extensions/voucher/utils.py:332 +#: ecommerce/extensions/voucher/utils.py:337 +msgid "Catalog Query" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:55 +#: ecommerce/extensions/voucher/utils.py:285 +#: ecommerce/extensions/voucher/utils.py:340 +msgid "Redeemed For Course IDs" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:57 +#: ecommerce/extensions/voucher/utils.py:284 +#: ecommerce/extensions/voucher/utils.py:331 +#: ecommerce/extensions/voucher/utils.py:339 +msgid "Redeemed For Course ID" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:76 +#: ecommerce/templates/oscar/dashboard/users/detail.html:52 +msgid "Active" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:171 +#: ecommerce/extensions/voucher/utils.py:219 +#: ecommerce/extensions/voucher/utils.py:263 +msgid "Code" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:171 +msgid "This row applies to all vouchers" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:172 +#: ecommerce/extensions/voucher/utils.py:275 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:126 +msgid "Category" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:173 +#: ecommerce/extensions/voucher/utils.py:288 +msgid "Coupon Expiry Date" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:174 +#: ecommerce/extensions/voucher/utils.py:264 +msgid "Coupon Name" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:175 +#: ecommerce/extensions/voucher/utils.py:287 +msgid "Coupon Start Date" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:176 +#: ecommerce/extensions/voucher/utils.py:267 +msgid "Coupon Type" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:177 +#: ecommerce/extensions/voucher/utils.py:286 +msgid "Create Date" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:178 +#: ecommerce/extensions/voucher/utils.py:279 +msgid "Discount Percentage" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:179 +#: ecommerce/extensions/voucher/utils.py:280 +msgid "Discount Amount" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:180 +#: ecommerce/extensions/voucher/utils.py:289 +msgid "Email Domains" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:181 +#: ecommerce/extensions/voucher/utils.py:278 +msgid "Invoiced Amount" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:182 +#: ecommerce/extensions/voucher/utils.py:276 +msgid "Note" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:183 +#: ecommerce/extensions/voucher/utils.py:277 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:50 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:61 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:63 +msgid "Price" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:187 +#: ecommerce/extensions/voucher/utils.py:269 +#: ecommerce/extensions/voucher/utils.py:327 +#: ecommerce/extensions/voucher/utils.py:333 +#: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:8 +msgid "Course ID" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:188 +#: ecommerce/extensions/voucher/utils.py:273 +#: ecommerce/extensions/voucher/utils.py:328 +#: ecommerce/extensions/voucher/utils.py:334 +msgid "Organization" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:193 +#: ecommerce/extensions/voucher/utils.py:272 +#: ecommerce/extensions/voucher/utils.py:330 +#: ecommerce/extensions/voucher/utils.py:338 +msgid "Course Seat Types" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:220 +#: ecommerce/extensions/voucher/utils.py:265 +#: ecommerce/extensions/voucher/utils.py:321 +msgid "Maximum Coupon Usage" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:221 +#: ecommerce/extensions/voucher/utils.py:266 +#: ecommerce/extensions/voucher/utils.py:322 +msgid "Redemption Count" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:223 +#: ecommerce/extensions/voucher/utils.py:268 +msgid "URL" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:274 +#: ecommerce/extensions/voucher/utils.py:297 +msgid "Client" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:282 +#: ecommerce/extensions/voucher/utils.py:302 +#: ecommerce/extensions/voucher/utils.py:319 +#: ecommerce/templates/oscar/dashboard/users/detail.html:138 +msgid "Order Number" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:283 +#: ecommerce/extensions/voucher/utils.py:302 +#: ecommerce/extensions/voucher/utils.py:320 +msgid "Redeemed By Username" +msgstr "" + +#: ecommerce/extensions/voucher/utils.py:785 +#, python-brace-format +msgid "Range for coupon [{coupon_id}]" +msgstr "" + +#: ecommerce/extensions/voucher/views.py:31 +#, python-brace-format +msgid "Coupon Report for {coupon_name}" +msgstr "" + +#: ecommerce/extensions/voucher/views.py:40 +msgid "" +"Failed to find a matching stock record for coupon, report download canceled." +msgstr "" + +#: ecommerce/invoice/models.py:13 +msgid "Not Paid" +msgstr "" + +#: ecommerce/invoice/models.py:14 +msgid "Paid" +msgstr "" + +#: ecommerce/invoice/models.py:18 +msgid "Prepaid" +msgstr "" + +#: ecommerce/invoice/models.py:19 +msgid "Postpaid" +msgstr "" + +#: ecommerce/invoice/models.py:20 +msgid "Bulk purchase" +msgstr "" + +#: ecommerce/invoice/models.py:21 +msgid "Not applicable" +msgstr "" + +#: ecommerce/invoice/models.py:26 +msgid "Fixed" +msgstr "" + +#: ecommerce/management/templates/management/index.html:7 +msgid "Management View" +msgstr "" + +#: ecommerce/management/templates/management/index.html:26 +msgid "Refund Transactions" +msgstr "" + +#: ecommerce/management/views.py:53 +#, python-brace-format +msgid "{action} is not a valid action." +msgstr "" + +#: ecommerce/programs/benefits.py:27 +#, python-brace-format +msgid "{value}% program discount" +msgstr "" + +#: ecommerce/programs/benefits.py:44 +#, python-brace-format +msgid "{value} fixed-price program discount" +msgstr "" + +#: ecommerce/programs/forms.py:70 +msgid "An offer already exists for this program." +msgstr "" + +#: ecommerce/programs/forms.py:90 +#, python-brace-format +msgid "{current_date} Discount for the {program_title} {program_type} Program" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_form.html:9 +#, python-format +msgid "Edit Program Offer: %(program_title)s" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_form.html:14 +#: ecommerce/programs/templates/programs/programoffer_form.html:47 +#: ecommerce/programs/templates/programs/programoffer_form.html:60 +#: ecommerce/programs/templates/programs/programoffer_list.html:20 +msgid "Create Program Offer" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_form.html:30 +#: ecommerce/programs/templates/programs/programoffer_list.html:6 +#: ecommerce/programs/templates/programs/programoffer_list.html:17 +#: ecommerce/templates/edx/partials/_administration_menu.html:11 +msgid "Program Offers" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_form.html:45 +msgid "Edit Program Offer" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_form.html:76 +#: ecommerce/programs/templates/programs/programoffer_list.html:60 +#, python-format +msgid "" +"\n" +" %(platform_name)s Program Offer Administration Tool\n" +" " +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_list.html:26 +msgid "Current program offers" +msgstr "" + +#: ecommerce/programs/templates/programs/programoffer_list.html:29 +msgid "Program Title" +msgstr "" + +#: ecommerce/programs/views.py:38 +msgid "Program offer updated!" +msgstr "" + +#: ecommerce/programs/views.py:61 +msgid "Program offer created!" +msgstr "" + +#: ecommerce/referrals/models.py:26 +msgid "Affiliate ID" +msgstr "" + +#: ecommerce/referrals/models.py:27 +msgid "UTM Source" +msgstr "" + +#: ecommerce/referrals/models.py:28 +msgid "UTM Medium" +msgstr "" + +#: ecommerce/referrals/models.py:29 +msgid "UTM Campaign" +msgstr "" + +#: ecommerce/referrals/models.py:30 +msgid "UTM Term" +msgstr "" + +#: ecommerce/referrals/models.py:31 +msgid "UTM Content" +msgstr "" + +#: ecommerce/referrals/models.py:32 +msgid "UTM Created At" +msgstr "" + +#: ecommerce/settings/_oscar.py:233 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 +#: ecommerce/templates/oscar/dashboard/index.html:22 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:14 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:29 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:30 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:31 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:30 +#: ecommerce/templates/oscar/dashboard/users/detail.html:20 +msgid "Dashboard" +msgstr "" + +#: ecommerce/settings/_oscar.py:238 +msgid "Catalogue" +msgstr "" + +#: ecommerce/settings/_oscar.py:242 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 +msgid "Products" +msgstr "" + +#: ecommerce/settings/_oscar.py:246 +msgid "Product Types" +msgstr "" + +#: ecommerce/settings/_oscar.py:250 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 +msgid "Categories" +msgstr "" + +#: ecommerce/settings/_oscar.py:254 +msgid "Ranges" +msgstr "" + +#: ecommerce/settings/_oscar.py:258 +msgid "Low stock alerts" +msgstr "" + +#: ecommerce/settings/_oscar.py:264 +msgid "Fulfillment" +msgstr "" + +#: ecommerce/settings/_oscar.py:268 +#: ecommerce/templates/oscar/dashboard/index.html:33 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:11 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:32 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:38 +#: ecommerce/templates/oscar/dashboard/users/detail.html:120 +#: ecommerce/templates/oscar/dashboard/users/detail.html:134 +msgid "Orders" +msgstr "" + +#: ecommerce/settings/_oscar.py:272 +msgid "Statistics" +msgstr "" + +#: ecommerce/settings/_oscar.py:280 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:11 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:32 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:38 +#: ecommerce/templates/oscar/dashboard/users/detail.html:121 +msgid "Refunds" +msgstr "" + +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 +#: ecommerce/templates/oscar/dashboard/users/detail.html:23 +msgid "Customers" +msgstr "" + +#: ecommerce/settings/_oscar.py:294 +msgid "Stock alert requests" +msgstr "" + +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 +msgid "Offers" +msgstr "" + +#: ecommerce/settings/_oscar.py:308 +msgid "Vouchers" +msgstr "" + +#: ecommerce/settings/_oscar.py:314 +msgid "Reports" +msgstr "" + +#: ecommerce/settings/base.py:93 +msgid "English" +msgstr "" + +#: ecommerce/settings/base.py:94 +msgid "Spanish" +msgstr "" + +#: ecommerce/settings/base.py:95 +msgid "Spanish (Latin American)" +msgstr "" + +#: ecommerce/templates/base.html:10 +msgid "Build" +msgstr "" + +#: ecommerce/templates/base.html:71 +msgid "Version:" +msgstr "" + +#: ecommerce/templates/coupons/_offer_error.html:4 +#: ecommerce/templates/coupons/offer.html:5 +#: ecommerce/templates/edx/email_confirmation_required.html:4 +msgid "Redeem" +msgstr "" + +#: ecommerce/templates/coupons/coupon_app.html:5 +msgid "Coupon Codes" +msgstr "" + +#: ecommerce/templates/coupons/offer.html:18 +msgid "" +"Earn a verified certificate in one of our popular courses to advance your " +"career, showcase your accomplishments or enhance your college application." +msgstr "" + +#: ecommerce/templates/coupons/offer.html:22 +msgid "Why buy a verified certificate?" +msgstr "" + +#: ecommerce/templates/coupons/offer.html:27 +msgid "" +"A verified certificate (digital) confirming that a user has completed the " +"course on a specified date. The certificate includes edX's logo and the " +"university's logo, as well as signatures from faculty members involved with " +"the course. There is also a URL that can be used to verify the authenticity " +"of the certificate." +msgstr "" + +#: ecommerce/templates/coupons/offer.html:30 +msgid "" +"A verified certificate demonstrates to future employers that you've mastered" +" the course material." +msgstr "" + +#: ecommerce/templates/coupons/offer.html:32 +msgid "" +"The certificate is officially signed and stamped by the institution that " +"offers the course." +msgstr "" + +#: ecommerce/templates/coupons/offer.html:34 +msgid "" +"You're twelve times more likely to complete the course if you're working " +"toward a verified certificate." +msgstr "" + +#: ecommerce/templates/courses/course_app.html:5 +#: ecommerce/templates/edx/partials/_administration_menu.html:5 +msgid "Courses" +msgstr "" + +#: ecommerce/templates/courses/course_app.html:27 +#, python-format +msgid "" +"\n" +" %(platform_name)s Course Administration Tool\n" +" " +msgstr "" + +#: ecommerce/templates/courses/menu_options.html:8 +msgid "Student Dashboard" +msgstr "" + +#: ecommerce/templates/courses/menu_options.html:11 +msgid "Course Admin Tool" +msgstr "" + +#: ecommerce/templates/courses/menu_options.html:14 +msgid "E-Commerce Dashboard" +msgstr "" + +#: ecommerce/templates/edx/base_menu.html:7 +msgid "Sign Out" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:13 +#, python-format +msgid "Receipt for %(order_number)s" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:43 +msgid "Thank you for your order!" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:53 +#, python-brace-format +msgid "" +"Your order is complete. You will receive a confirmation message and your " +"enrollment code(s) at {link_start}{email}{link_end}. If you need a receipt, " +"you can print this page." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 +msgid "" +"Your order is complete. If you need a receipt, you can print this page." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:87 +msgid "Order Number:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:90 +msgid "Payment Method:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:93 +msgid "Order Date:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:99 +msgid "Order Information" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:104 +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:12 +msgid "Description" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:105 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 +msgid "Item Price" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:109 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 +msgid "Quantity:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:111 +msgid "Description:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:120 +msgid "Item Price:" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:126 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 +msgid "Subtotal" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:142 +#, python-format +msgid "%(voucher_discount_amount)s off" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:152 +#, python-format +msgid "Discount of type %(type)s provided by %(enterprise_name)s" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:157 +msgid "Discount for your first upgrade" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:160 +#, python-format +msgid "Discount of type %(type)s is provided." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:174 +#, python-format +msgid "Courtesy of %(enterprise_name)s." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:187 +msgid "Total" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:194 +msgid "Get Your Course Credit" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:196 +#, python-brace-format +msgid "" +"To receive academic credit for this course, you must apply for credit at the" +" organization that offers the credit. You can find a link to the " +"organization’s website on your " +"{link_start}{lms_dashboard_url}{link_middle}dashboard{link_end}, next to the" +" course name." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:210 +msgid "Go to dashboard" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:213 +msgid "Find more courses" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt_not_found.html:7 +msgid "Order Not Found" +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt_not_found.html:19 +#, python-format +msgid " %(error_summary)s " +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt_not_found.html:23 +msgid "" +"The specified order could not be located. Please ensure that the URL is " +"correct, and try again." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt_not_found.html:31 +#, python-brace-format +msgid "" +"\n" +" You may also view your previous orders on the {link_start}{order_history_url}{link_middle}{link_end}Account Settings{link_end}\n" +" page.\n" +" " +msgstr "" + +#: ecommerce/templates/edx/credit/_provider_detail.html:8 +msgid "Select" +msgstr "" + +#: ecommerce/templates/edx/credit/_provider_detail.html:16 +msgid "Credits: " +msgstr "" + +#: ecommerce/templates/edx/credit/_provider_detail.html:17 +msgid "Price: " +msgstr "" + +#: ecommerce/templates/edx/credit/_provider_detail.html:27 +#, python-format +msgid "" +"\n" +" Learn more about %(display_name)s credit?\n" +" " +msgstr "" + +#: ecommerce/templates/edx/credit/_provider_detail.html:47 +#, python-format +msgid "" +"\n" +" Credit available until %(date)s\n" +" " +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:9 +#, python-format +msgid "Purchase Credit for %(course_name)s" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:27 +#, python-format +msgid "" +"\n" +" Purchase Credit for %(course_name)s\n" +" " +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:34 +#, python-format +msgid "" +"\n" +" Congratulations! You are eligible to purchase academic course credit for this course.\n" +" You must purchase your credit before %(date)s.\n" +" Select one of the following institutions to purchase your credit.\n" +" " +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:51 +msgid "Price:" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:55 +msgid "Discount:" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:60 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:127 +msgid "Total:" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:89 +msgid "You deserve it." +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:92 +msgid "" +"The hard work is over - you passed the course! Now get the credit you " +"deserve to start or complete a degree." +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:98 +msgid "It's affordable." +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:101 +msgid "" +"The credit offered through edX generally costs less than the same credit at " +"most institutions." +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:107 +msgid "It opens doors." +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:110 +msgid "" +"Many of today's most in-demand jobs require a college degree. Start your " +"path to success!" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:118 +msgid "Questions?" +msgstr "" + +#: ecommerce/templates/edx/credit/checkout.html:121 +#, python-brace-format +msgid "" +"\n" +" Please read {link_start}our FAQs to view common questions about our certificates.{link_end}\n" +" " +msgstr "" + +#: ecommerce/templates/edx/email_confirmation_required.html:16 +msgid "You are enrolling in: " +msgstr "" + +#: ecommerce/templates/edx/email_confirmation_required.html:26 +#, python-format +msgid "" +"An email has been sent to %(user_email)s with a link for you to activate " +"your account." +msgstr "" + +#: ecommerce/templates/edx/email_confirmation_required.html:29 +msgid "Why activate?" +msgstr "" + +#: ecommerce/templates/edx/email_confirmation_required.html:31 +msgid "" +"We ask you to activate your account to ensure it is really you creating the " +"account and to prevent fraud." +msgstr "" + +#: ecommerce/templates/edx/error.html:17 +msgid "If you need assistance, contact edX support." +msgstr "" + +#: ecommerce/templates/edx/partials/_administration_menu.html:6 +msgid "Coupons" +msgstr "" + +#: ecommerce/templates/edx/partials/_administration_menu.html:8 +msgid "Enterprise Coupons" +msgstr "" + +#: ecommerce/templates/edx/partials/_base_navbar.html:10 +msgid "Toggle navigation" +msgstr "" + +#: ecommerce/templates/edx/partials/_base_navbar.html:25 +msgid "Dashboard for:" +msgstr "" + +#: ecommerce/templates/edx/partials/_base_navbar.html:32 +msgid "Toggle Dropdown" +msgstr "" + +#: ecommerce/templates/edx/partials/_base_navbar.html:40 +#: ecommerce/templates/edx/partials/_base_navbar.html:41 +msgid "Login" +msgstr "" + +#: ecommerce/templates/edx/partials/_staff_navbar.html:9 +msgid "E-Commerce Course Administration" +msgstr "" + +#: ecommerce/templates/edx/partials/_staff_navbar.html:14 +msgid "E-Commerce Coupon Administration" +msgstr "" + +#: ecommerce/templates/edx/partials/_staff_navbar.html:19 +msgid "E-Commerce Program Offers Administration" +msgstr "" + +#: ecommerce/templates/oscar/basket/basket.html:48 +msgid "Your basket is empty" +msgstr "" + +#: ecommerce/templates/oscar/basket/basket.html:49 +#, python-brace-format +msgid "" +"\n" +" If you attempted to make a purchase, you have not been charged. Return to your {link_start}{link_middle}{homepage_url}dashboard{link_end} to try\n" +" again, or {link_start}{homepage_url}{link_middle}contact {platform_name} Support{link_end}.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/messages/new_total.html:7 +msgid "Your basket is now empty" +msgstr "" + +#: ecommerce/templates/oscar/basket/messages/new_total.html:10 +#: ecommerce/templates/oscar/basket/messages/new_total.html:16 +#, python-brace-format +msgid "" +"\n" +" {strong_start}We’ve updated your quantity.{strong_end}\n" +" {paragraph_start}Your cart includes {num_items} enrollment codes at a total cost of {total}, that you will receive via email.{paragraph_end}\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/messages/new_total.html:27 +msgid "View basket" +msgstr "" + +#: ecommerce/templates/oscar/basket/messages/new_total.html:28 +msgid "Checkout now" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/add_voucher_form.html:11 +msgid "Applying..." +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/add_voucher_form.html:16 +msgid "Apply" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:16 +msgid "in your cart" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:17 +msgid "Your purchase contains the following" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:36 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:57 +msgid "Updating..." +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:36 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:57 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:518 +msgid "Update" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:47 +msgid "summary" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:68 +msgid "Discounts applied" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:80 +#, python-format +msgid "" +"\n" +" %(benefit)s discount provided by %(enterprise_customer_name)s.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:87 +#, python-format +msgid "" +"\n" +" %(benefit)s%% discount for your first upgrade applied.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:104 +#, python-format +msgid "" +"\n" +" Coupon %(voucher_code)s applied for %(total_benefit)s off\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:110 +msgid "Remove coupon" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:119 +msgid "Add coupon code" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:119 +msgid "(optional)" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:128 +msgid "TOTAL" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:135 +msgid "order details" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:153 +msgid "select payment method" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:155 +msgid "Pay with a Credit Card" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:166 +msgid "Pay with PayPal" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:175 +msgid "Pay with Apple Pay" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:190 +msgid "card holder information" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:201 +msgid "billing information" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:203 +msgid "Credit cards" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:210 +msgid "Card Number (required)" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:210 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:220 +msgid "Secure" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:213 +msgid "Credit card icon" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:219 +msgid "Security Code (required)" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:223 +msgid "Help with CVV" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:226 +msgid "" +"The three last digits in the signature area on the back of your card. For " +"American Express, it is the four digits on the front of the card." +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:233 +msgid "Expiration (required)" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:237 +msgid "Month" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:247 +msgid "Year" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:264 +#: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:274 +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:152 +msgid "Place Order" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:23 +msgid "Earn a valuable certificate to showcase the skills you learn in" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:70 +#, python-format +msgid "" +"\n" +" %(benefit_value)s off\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:99 +#, python-format +msgid "" +"\n" +" Coupon code %(voucher_code)s applied\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:116 +msgid "Apply a coupon code" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:164 +#, python-format +msgid "Checkout with %(title)s" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:166 +msgid "Checkout" +msgstr "" + +#. Translators: tags will bold the text within. Keep the +#. tags and translate the text within. +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:179 +#, python-brace-format +msgid "" +"{strong_start}Note:{strong_end} To complete your enrollment, select Checkout" +" or Checkout with PayPal." +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:185 +msgid "Have questions?" +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:186 +msgid "Please read our FAQs to view common questions about our certificates." +msgstr "" + +#: ecommerce/templates/oscar/basket/partials/seat_type.html:6 +#, python-format +msgid "" +"\n" +" %(seat_type)s Certificate\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/checkout/cancel_checkout.html:7 +#: ecommerce/templates/oscar/checkout/cancel_checkout.html:16 +msgid "Checkout Cancelled" +msgstr "" + +#: ecommerce/templates/oscar/checkout/cancel_checkout.html:18 +#, python-brace-format +msgid "" +"\n" +" Your transaction has been cancelled. If you feel an error has occurred, contact {start_link}\n" +" {payment_support_email}{end_link}.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/checkout/error.html:7 +#: ecommerce/templates/oscar/checkout/error.html:18 +msgid "Checkout Error" +msgstr "" + +#: ecommerce/templates/oscar/checkout/error.html:19 +msgid "An error has occurred with your payment." +msgstr "" + +#: ecommerce/templates/oscar/checkout/error.html:19 +msgid "You have not been charged." +msgstr "" + +#: ecommerce/templates/oscar/checkout/error.html:21 +#, python-brace-format +msgid "" +"\n" +" Please try to submit your payment again. If this problem persists, please refer to our {start_link}\n" +" Payments FAQ {end_link} for troubleshooting tips.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/checkout/payment_error.html:7 +#: ecommerce/templates/oscar/checkout/payment_error.html:16 +msgid "Payment Failed" +msgstr "" + +#: ecommerce/templates/oscar/checkout/payment_error.html:18 +#, python-brace-format +msgid "" +"An error occurred while processing your payment. {strong_start}You have not " +"been charged.{strong_end}" +msgstr "" + +#: ecommerce/templates/oscar/checkout/payment_error.html:25 +#, python-brace-format +msgid "" +"Please wait a few minutes and then try again. For help, check our " +"{start_link}Help Center{end_link}." +msgstr "" + +#: ecommerce/templates/oscar/checkout/payment_error.html:32 +#, python-brace-format +msgid "To try again, return to your {start_link}dashboard{end_link}." +msgstr "" + +#: ecommerce/templates/oscar/checkout/sdn_failure.html:9 +msgid "" +"\n" +" SDN Check Failure\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/checkout/sdn_failure.html:26 +msgid "" +"Unfortunately, your account profile or payment information appears to match " +"one or more records on a U.S. Treasury Department sanctions list. This means" +" we cannot complete your transaction or provide you with services and must " +"suspend your learner account." +msgstr "" + +#: ecommerce/templates/oscar/checkout/sdn_failure.html:35 +#, python-brace-format +msgid "" +"If you have questions regarding clearing a match, please contact " +"{ofac_email_link} ofac.reconsideration@treasury.gov{end_link} for " +"information about options for clearing a match. Your account will be " +"suspended until this matter is resolved satisfactorily." +msgstr "" + +#: ecommerce/templates/oscar/communication/email_base.html:189 +#: ecommerce/templates/oscar/customer/email_base.html:189 +#, python-format +msgid "Copyright © %(year)s %(platform_name)s. All rights reserved." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:9 +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:4 +#, python-format +msgid "Hi %(full_name)s," +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:11 +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:6 +#, python-format +msgid "" +"Thank you for purchasing %(course_title)s. A charge will appear on your " +"credit or debit card statement with a company name of \"%(platform_name)s\"." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:13 +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:8 +#, python-format +msgid "" +"You can access your course and complete your verification (if required) on " +"your %(platform_name)s dashboard. " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:14 +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:9 +#, python-format +msgid "" +"To explore other great courses, visit the %(platform_name)s website. More " +"courses are added every day!" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:17 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:43 +msgid "View Payment Information" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:20 +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:14 +msgid "Thank you. We hope you enjoy the course!" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:21 +#, python-format +msgid "%(platform_name)s team " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:31 +#, python-format +msgid "" +"You are receiving this email because you purchased a seat in the " +"%(platform_name)s course %(course_title)s." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:2 +msgid "Receipt Confirmation for: " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:11 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:12 +msgid "To view your payment information, visit the following website." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:16 +#, python-format +msgid "%(platform_name)s team" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:18 +msgid "The edX team" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_subject.txt:2 +msgid "Order Placed" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:13 +msgid "Payment Confirmation" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:27 +msgid "Payment confirmation for:" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:55 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:4 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:25 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:5 +#, python-format +msgid "Dear %(full_name)s," +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:60 +#, python-format +msgid "" +"\n" +" Thank you for purchasing %(credit_hours)s credit hours from %(credit_provider)s for %(course_title)s. A charge will appear on your credit or debit card statement with a company name of \"%(platform_name)s\".\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:67 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:8 +#, python-format +msgid "" +"To receive your course credit, you must also request credit at the " +"%(credit_provider)s website. For a link to request credit from " +"%(credit_provider)s, or to see the status of your credit request, go to your" +" %(platform_name)s dashboard." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:71 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:10 +#, python-format +msgid "" +"To explore other credit-eligible courses, visit the %(platform_name)s " +"website. We add new courses frequently!" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:74 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:15 +msgid "Thank you. We hope you enjoyed your course!" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:75 +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:16 +#, python-format +msgid "The %(platform_name)s team" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:88 +#, python-format +msgid "" +"\n" +" You received this message because you purchased credit hours for %(course_title)s, an %(platform_name)s course.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:2 +msgid "Payment confirmation for: " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:6 +#, python-format +msgid "" +"Thank you for purchasing %(credit_hours)s credit hours from " +"%(credit_provider)s for %(course_title)s. A charge will appear on your " +"credit or debit card statement with a company name of \"%(platform_name)s\"." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:18 +#, python-format +msgid "" +"You received this message because you purchased credit hours for " +"%(course_title)s, an %(platform_name)s course." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_subject.txt:2 +msgid "Order Receipt" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:14 +msgid "For Business" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:26 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:6 +#, python-format +msgid "" +"Thank you for purchasing access to %(course_name)s. Let's get your group " +"ready to learn with edX:" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:29 +#, python-brace-format +msgid "" +"\n" +" Download and save the {link_start}{download_csv_link}{link_middle} enrollment code file.{link_end}\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:34 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:9 +msgid "Distribute one code per learner before the expiration date." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:35 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:10 +msgid "Pro tip: Track which code is associated with which person." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:36 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:11 +msgid "Learners sign-in/register with edX and enroll for the course." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:39 +#, python-brace-format +msgid "" +"\n" +" To view your payment information, log in to see your Order History, under {link_start}{order_history_url}{link_middle}Account Settings{link_end}.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:45 +#, python-brace-format +msgid "" +"\n" +" For more information and assistance, check our {link_start}Help Center{link_end}\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:50 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:16 +msgid "Thank You" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:61 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:18 +msgid "By purchasing, you and your organization agree to the following terms:" +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:63 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:20 +msgid "" +"Each code is valid for the one course covered and can be used only one time." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:64 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:21 +msgid "You are responsible for distributing codes to your learners." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:65 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:22 +msgid "" +"Each code will expire in one year from date of purchase or, if earlier, once" +" the course is closed." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:66 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:23 +msgid "" +"If a course is not designated as self-paced, you should confirm that a " +"course run is available before expiration." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:67 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:24 +msgid "You may not resell codes to third parties." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:68 +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:25 +msgid "All sales final. No refunds." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:2 +msgid "Order confirmation for: " +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:8 +#, python-format +msgid "" +"Please visit %(download_csv_link)s to download and save the enrollment code " +"file." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:13 +#, python-format +msgid "" +"To view your payment information, log in to see your Order History, under " +"Account Settings at %(order_history_url)s." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:14 +msgid "For more information and assistance, contact info@edx.org." +msgstr "" + +#: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_subject.txt:2 +#, python-format +msgid "%(partner_name)s: Order Confirmation: [%(order_number)s]" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:6 +#: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:6 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:147 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:77 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:62 +#: ecommerce/templates/oscar/dashboard/users/detail.html:99 +msgid "Actions" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:12 +msgid "Edit category" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:17 +msgid "Add child category" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:22 +msgid "Edit children" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/category_row_actions.html:27 +#: ecommerce/templates/oscar/dashboard/catalogue/product_row_actions.html:14 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:271 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:700 +msgid "Delete" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:11 +#, python-format +msgid "" +"\n" +" Created product variant '%(name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:17 +#, python-format +msgid "" +"\n" +" Created variant of '%(parent_name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:25 +#, python-format +msgid "" +"\n" +" Updated product variant '%(name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:31 +#, python-format +msgid "" +"\n" +" Updated a variant of '%(parent_name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:42 +#, python-format +msgid "" +"\n" +" Created product '%(name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:48 +#, python-format +msgid "" +"\n" +" Updated product '%(name)s'.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/messages/product_saved.html:60 +msgid "Edit again" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:45 +#, python-brace-format +msgid "" +"\n" +" You are currently editing a product variant of\n" +" {start_anchor}{title}{end_anchor}.\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:61 +msgid "Sections" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:73 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:103 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:34 +msgid "Product details" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:78 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:146 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:257 +msgid "Attributes" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:81 +msgid "Images" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:84 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:188 +msgid "Stock and pricing" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:87 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:248 +msgid "Variants" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:90 +msgid "Upselling" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:148 +msgid "Product Type:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:169 +msgid "Upload, change or remove images" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:194 +msgid "SKU" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:196 +msgid "Num in stock" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:197 +msgid "Num allocated" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:198 +msgid "Low stock threshold" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:201 +msgid "Cost price" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:202 +msgid "Price (excl tax)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:203 +msgid "Retail price" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:204 +msgid "Delete?" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:249 +msgid "Adding..." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:251 +msgid "Add variant" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:256 +msgid "Title" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:258 +msgid "Stock records" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:280 +msgid "This product does not have any variants." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:282 +msgid "One can't add variants to this product at this point." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:284 +msgid "This is likely because this product still has stock records." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:300 +msgid "Recommended products" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:325 +msgid "or" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:327 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:331 +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:334 +msgid "Saving..." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:328 +msgid "Save and add another variant" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:332 +msgid "Save and continue editing" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:335 +msgid "Save" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:27 +msgid "Store Statistics (Last 24 Hours)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:34 +msgid "New Customers" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:35 +#: ecommerce/templates/oscar/dashboard/index.html:41 +msgid "Revenue" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:36 +msgid "Average order cost" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:37 +msgid "Average (paid) order cost" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:67 +msgid "Products and vouchers" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:69 +msgid "Total products" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/index.html:73 +msgid "Active Vouchers" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:6 +#, python-format +msgid "%(name)s | Offers " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:25 +msgid "Reinstating..." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:25 +msgid "Reinstate offer" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:26 +msgid "Suspending..." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:26 +msgid "Suspend offer" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:27 +msgid "Delete offer" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:38 +msgid "Offer currently available" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:39 +msgid "Offer not available due to restrictions!" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:41 +msgid "Total cost:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:42 +msgid "Number of orders:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:43 +msgid "Number of uses:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:48 +msgid "Date created:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:49 +msgid "Offer details" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:67 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:20 +msgid "Incentive" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:72 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:26 +msgid "Condition" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:77 +#: ecommerce/templates/oscar/dashboard/offers/summary.html:31 +msgid "Restrictions" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:92 +msgid "Export to CSV" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:93 +msgid "Orders that used this offer" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:97 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:68 +msgid "Order number" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:98 +msgid "Order date" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:99 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:292 +msgid "Order total" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:100 +msgid "Cost" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/offers/summary.html:4 +msgid "Offer summary" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:6 +#, python-format +msgid "" +"\n" +" Order %(number)s - Line #%(id)s\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:22 +#, python-format +msgid "Line #%(id)s" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:27 +#, python-format +msgid "Order #%(number)s - Line #%(id)s" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:38 +msgctxt "Product title" +msgid "Title" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:44 +msgid "Product Type" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:47 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:140 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:110 +msgid "UPC" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:54 +msgid "Product Options" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:67 +msgid "Partner details" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:77 +msgid "Partner SKU" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:83 +msgid "Shipping details" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:87 +msgid "Partner reference number" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:90 +msgid "Partner notes" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:93 +msgid "Estimate dispatch date" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:102 +msgid "Shipping status" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:107 +msgid "State" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:119 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:150 +msgid "No shipping events have occurred." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:127 +msgid "Shipping events" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:132 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:163 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:404 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:452 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:168 +msgid "Event" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:134 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:406 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:455 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:561 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:595 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:172 +msgid "Reference" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:135 +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:165 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:403 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:451 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:597 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:679 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:167 +msgid "Date" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:158 +msgid "Payment events" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/line_detail.html:179 +msgid "No payment events have occurred." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:10 +#, python-format +msgid "Order %(number)s" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:39 +#, python-format +msgid "Order #%(number)s" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:45 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:49 +msgid "Customer Information" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:49 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:53 +#: ecommerce/templates/oscar/dashboard/users/detail.html:44 +msgid "Full name" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:50 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:54 +msgid "Email address" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:59 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:63 +msgid "Customer has deleted their account." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:67 +msgid "Order information" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:69 +msgid "Order Total" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:70 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:74 +msgid "Date of purchase" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:71 +msgid "Time of purchase" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:85 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:108 +msgid "Retry Fulfillment" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:96 +msgid "Order Details" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:104 +msgid "Order contents" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:110 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:491 +msgid "Shipping" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:113 +msgid "Payment" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:116 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:623 +msgid "Discounts" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:119 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:673 +msgid "Notes" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:127 +msgid "Items ordered" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:137 +msgid "Line ID" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:139 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:109 +msgid "Product" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:142 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:112 +msgid "Supplier" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:143 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:113 +msgid "Supplier SKU" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:144 +msgid "Est. dispatch date" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:145 +msgid "Price excl tax (before discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:146 +msgid "Price inc tax (before discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:188 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:105 +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:26 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:90 +#: ecommerce/templates/oscar/dashboard/users/detail.html:155 +msgid "View" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:206 +msgid "Basket total (excl. discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:227 +msgid "Basket total (inc. discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:237 +msgid "Basket total" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:250 +msgid "Shipping total (excl. discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:271 +msgid "Shipping total (inc. discounts)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:281 +msgid "Shipping total" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:309 +msgid "With selected lines" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:315 +msgid "Change line status to" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:319 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:125 +msgid "choose new status" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:331 +msgid "Create shipping event" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:335 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:354 +msgid "choose event type" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:342 +msgid "with reference" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:350 +msgid "Create payment event" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:361 +msgid "with amount" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:369 +msgid "Create refund" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:373 +msgid "Go!" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:382 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:119 +msgid "Change order status" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:386 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:134 +msgid "Change status" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:388 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:136 +msgid "This order can't have its status changed." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:396 +msgid "Shipping Events" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:405 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:454 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:170 +msgid "Lines" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:419 +#, python-format +msgid "" +"\n" +" %(title)s (quantity %(event_qty)s/%(total_qty)s)\n" +" " +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:434 +msgid "No shipping events." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:444 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:159 +msgid "Payment Events" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:453 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:594 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:634 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:169 +msgid "Amount" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:467 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 +msgid "Product:" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:467 +msgid "quantity" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:479 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:196 +msgid "No payment events." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:496 +msgid "Method name" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:500 +msgid "Method code" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:504 +msgid "Charge (incl tax)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:508 +msgid "Charge (excl tax)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:512 +msgid "Address" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:523 +msgid "Phone" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:527 +msgid "Instructions" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:540 +msgid "Billing address" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:551 +msgid "Payment sources" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:557 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:593 +msgid "Source" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:558 +msgid "Allocation" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:559 +msgid "Amount debited" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:560 +msgid "Amount refunded" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:579 +msgid "No payment sources found for this order." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:588 +msgid "Transactions" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:630 +msgid "Voucher" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:631 +msgid "Offer name" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:632 +msgid "Frequency" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:633 +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:682 +msgid "Message" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:661 +msgid "No discounts were applied to this order." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:683 +msgid "Admin" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:708 +msgid "No notes available." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:719 +msgid "Save note" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_detail.html:720 +msgid "Notes are only editable for 5 minutes after being saved." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:58 +msgid "Download selected orders as a CSV" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:60 +msgid "Download" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:69 +msgid "Total inc tax" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:70 +msgid "Number of items" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:92 +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:99 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:78 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:85 +msgid "Deleted" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/orders/order_list.html:149 +msgid "No orders found." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:4 +#: ecommerce/templates/oscar/dashboard/users/detail.html:123 +msgid "Enrollments" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:9 +msgid "Mode" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:10 +msgid "Active?" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/enrollment_table.html:21 +msgid "No enrollments found." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:8 +msgid "Confirm Refund Processing" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:11 +msgid "" +"Are you sure you want to issue a full refund and revoke student's " +"enrollment?" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:14 +msgid "" +"Are you sure you want to issue a full refund without revoking student's " +"enrollment?" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:17 +msgid "Are you sure you want to deny this refund request?" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:21 +msgid "Confirm" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:5 +msgid "Approve Credit and Revoke" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:8 +msgid "Approve Credit Only" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_buttons.html:14 +msgid "Deny" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:10 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:57 +msgid "Number of Items" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:11 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:73 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:148 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:56 +msgid "Total Credit" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:12 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:74 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:61 +msgid "Created" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/refund_table.html:31 +#: ecommerce/templates/oscar/dashboard/refunds/refund_list.html:104 +msgid "No refunds found." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:4 +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:25 +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:45 +msgid "Search" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:26 +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:34 +msgid "Advanced Search" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:44 +msgid "Close" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/partials/search_form.html:45 +msgid "Searching..." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:11 +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:42 +#, python-format +msgid "Refund #%(id)s" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:71 +msgid "Refund Overview" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:76 +msgid "Associated Order" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:97 +msgid "Refund Items" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:106 +msgid "Refund Line ID" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:107 +msgid "Associated Order Line" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:114 +msgid "Credit (excl. tax)" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:171 +msgid "Processor" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:36 +msgid "General" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:54 +msgid "Yes,No" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:58 +msgid "Superuser" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:59 +#: ecommerce/templates/oscar/dashboard/users/detail.html:63 +msgid "True,False" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:62 +msgid "Staff" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:66 +msgid "Last login" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:70 +msgid "Date joined" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:76 +msgid "Products viewed" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:80 +msgid "Number of orders" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:84 +msgid "Number of ordered items" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:88 +msgid "Total spent" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:94 +msgid "Reviews written" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:107 +msgid "Send password reset email" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:125 +#: ecommerce/templates/oscar/dashboard/users/detail.html:186 +msgid "Addresses" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:126 +#: ecommerce/templates/oscar/dashboard/users/detail.html:214 +msgid "Reviews" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:139 +msgid "Num items" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:140 +msgid "Total value" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:141 +msgid "Date placed" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:160 +msgid "This customer has not placed any orders yet." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:205 +msgid "This customer has not saved any addresses." +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:217 +msgid "Product ID" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:218 +msgid "Score" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:219 +msgctxt "Product review title" +msgid "Title" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:220 +msgid "Body" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:221 +msgid "Date created" +msgstr "" + +#: ecommerce/templates/oscar/dashboard/users/detail.html:234 +msgid "This customer has not written any reviews yet." +msgstr "" + +#: ecommerce/urls.py:45 +msgid "E-Commerce Service Administration" +msgstr "" diff --git a/ecommerce/conf/locale/fil_PH/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/fil_PH/LC_MESSAGES/djangojs.mo new file mode 100644 index 00000000000..30179b901bf Binary files /dev/null and b/ecommerce/conf/locale/fil_PH/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/fil_PH/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/fil_PH/LC_MESSAGES/djangojs.po new file mode 100644 index 00000000000..547af727cb0 --- /dev/null +++ b/ecommerce/conf/locale/fil_PH/LC_MESSAGES/djangojs.po @@ -0,0 +1,545 @@ +# #-#-#-#-# django.po (ecommerce) #-#-#-#-# +# edX translation file +# Copyright (C) 2018 edX +# This file is distributed under the GNU AFFERO GENERAL PUBLIC LICENSE. +# +# Translators: +# Translators: +# Translators: +# Translators: +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: edx-platform\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" +"PO-Revision-Date: 2015-06-18 02:02+0000\n" +"Last-Translator: Transifex Bot <>\n" +"Language-Team: Filipino (Philippines) (http://app.transifex.com/open-edx/edx-platform/language/fil_PH/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fil_PH\n" +"Plural-Forms: nplurals=2; plural=(n == 1 || n==2 || n==3) || (n % 10 != 4 || n % 10 != 6 || n % 10 != 9);\n" + +#: ecommerce/static/js/models/coupon_model.js:33 +#: ecommerce/static/js/models/enterprise_coupon_model.js:15 +msgid "This field is required." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:34 +#: ecommerce/static/js/models/enterprise_coupon_model.js:16 +msgid "This value must be a number." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:35 +#: ecommerce/static/js/models/enterprise_coupon_model.js:17 +msgid "This value must be a date." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:36 +msgid "At least one seat type must be selected." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:72 +msgid "This field must be empty or contain 1-16 alphanumeric characters." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:81 +#, javascript-format +msgid "Email domain {%s} is invalid." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:98 +msgid "Must occur after start date" +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:128 +msgid "Max uses for multi-use coupons must be higher than 2." +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:152 +msgid "Must occur before end date" +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:174 +msgid "A valid course ID is required" +msgstr "" + +#: ecommerce/static/js/models/coupon_model.js:188 +msgid "A valid Program UUID is required." +msgstr "" + +#: ecommerce/static/js/models/course_model.js:54 +msgid "You must select a course type." +msgstr "" + +#: ecommerce/static/js/models/course_model.js:60 +msgid "You must choose if an honor seat should be created." +msgstr "" + +#: ecommerce/static/js/models/course_model.js:77 +msgid "The verification deadline must occur AFTER the upgrade deadline." +msgstr "" + +#: ecommerce/static/js/models/course_model.js:86 +msgid "Product validation failed." +msgstr "" + +#: ecommerce/static/js/models/course_model.js:94 +#: ecommerce/static/js/views/dynamic_catalog_view.js:70 +msgid "Course ID" +msgstr "" + +#: ecommerce/static/js/models/course_model.js:95 +msgid "Course Name" +msgstr "" + +#: ecommerce/static/js/models/course_model.js:96 +#: ecommerce/static/js/views/course_list_view.js:77 +msgid "Course Type" +msgstr "" + +#: ecommerce/static/js/models/course_model.js:97 +msgid "Verification Deadline" +msgstr "" + +#: ecommerce/static/js/models/course_model.js:98 +msgid "Include Honor Seat" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:28 +msgid "All course seats must have a price." +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:45 +msgid "Verified seats must have an upgrade deadline." +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:53 +msgid "The upgrade deadline must occur BEFORE the verification deadline." +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:84 +msgid "Verified" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:86 +#: ecommerce/static/js/views/course_form_view.js:77 +msgid "Credit" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:89 +msgid "Professional" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:91 +msgid "Honor" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:93 +msgid "Audit" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:101 +msgid "Verified Certificate" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:105 +msgid "Professional Certificate" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:108 +msgid "Honor Certificate" +msgstr "" + +#: ecommerce/static/js/models/course_seats/course_seat.js:111 +msgid "No Certificate" +msgstr "" + +#: ecommerce/static/js/models/course_seats/credit_seat.js:26 +msgid "All credit seats must have a credit provider." +msgstr "" + +#: ecommerce/static/js/models/course_seats/credit_seat.js:30 +msgid "Please select a valid credit provider." +msgstr "" + +#: ecommerce/static/js/models/course_seats/credit_seat.js:39 +msgid "All credit seats must designate a number of credit hours." +msgstr "" + +#: ecommerce/static/js/models/enterprise_coupon_model.js:18 +msgid "This value must be a valid email." +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:27 +msgid "Problem occurred during checkout. Please contact support." +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:101 +msgid "This field is required" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:145 +msgid "Invalid card number" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:147 +msgid "Unsupported card type" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:149 +msgid "Invalid security number" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:154 +msgid "Invalid month" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:156 +msgid "Invalid year" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:158 +msgid "Card expired" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:474 +msgid "" +msgstr "" + +#: ecommerce/static/js/pages/basket_page.js:475 +msgid "State/Province (required)" +msgstr "" + +#: ecommerce/static/js/pages/coupon_create_page.js:12 +#: ecommerce/static/js/pages/enterprise_coupon_create_page.js:12 +msgid "Create New Coupon" +msgstr "" + +#: ecommerce/static/js/pages/coupon_detail_page.js:13 +#: ecommerce/static/js/pages/enterprise_coupon_detail_page.js:13 +msgid "View Coupon" +msgstr "" + +#: ecommerce/static/js/pages/coupon_edit_page.js:13 +#: ecommerce/static/js/pages/enterprise_coupon_edit_page.js:13 +msgid "Edit Coupon" +msgstr "" + +#: ecommerce/static/js/pages/coupon_list_page.js:10 +msgid "Coupon Codes" +msgstr "" + +#: ecommerce/static/js/pages/course_create_page.js:12 +msgid "Create New Course" +msgstr "" + +#: ecommerce/static/js/pages/course_detail_page.js:13 +msgid "View Course" +msgstr "" + +#: ecommerce/static/js/pages/course_edit_page.js:13 +msgid "Edit Course" +msgstr "" + +#: ecommerce/static/js/pages/course_list_page.js:10 +msgid "Courses" +msgstr "" + +#: ecommerce/static/js/pages/enterprise_coupon_list_page.js:10 +msgid "Enterprise Coupon Codes" +msgstr "" + +#: ecommerce/static/js/pages/offer_page.js:14 +msgid "Redeem" +msgstr "" + +#: ecommerce/static/js/pages/receipt_page.js:21 +msgid "" +"Caution! Using the back button on this page may cause you to be charged " +"again." +msgstr "" + +#. Translators: Do not translate "Apple Pay". +#: ecommerce/static/js/payment_processors/cybersource.js:225 +msgid "" +"Apple Pay is not available at this time. Please try another payment method." +msgstr "" + +#: ecommerce/static/js/payment_processors/cybersource.js:255 +msgid "" +"An error occurred while processing your payment. You have NOT been charged. " +"Please try again, or select another payment method." +msgstr "" + +#: ecommerce/static/js/payment_processors/stripe.js:71 +msgid "" +"An error occurred while attempting to process your payment. You have not " +"been charged. Please check your payment details, and try again." +msgstr "" + +#: ecommerce/static/js/payment_processors/stripe.js:110 +msgid "An error occurred while processing your payment. Please try again." +msgstr "" + +#: ecommerce/static/js/utils/utils.js:184 +msgid "Trailing comma not allowed." +msgstr "" + +#: ecommerce/static/js/views/coupon_detail_view.js:108 +#: ecommerce/static/js/views/coupon_form_view.js:62 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:30 +msgid "Can be used once by one customer" +msgstr "" + +#: ecommerce/static/js/views/coupon_detail_view.js:110 +#: ecommerce/static/js/views/coupon_form_view.js:70 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:38 +msgid "Can be used multiple times by multiple customers" +msgstr "" + +#: ecommerce/static/js/views/coupon_detail_view.js:112 +#: ecommerce/static/js/views/coupon_form_view.js:66 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:34 +msgid "Can be used once by multiple customers" +msgstr "" + +#: ecommerce/static/js/views/coupon_form_view.js:51 +msgid "Enrollment Code" +msgstr "" + +#: ecommerce/static/js/views/coupon_form_view.js:55 +msgid "Discount Code" +msgstr "" + +#: ecommerce/static/js/views/coupon_form_view.js:787 +msgid "Save Changes" +msgstr "" + +#: ecommerce/static/js/views/coupon_form_view.js:802 +msgid "Create Coupon" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:35 +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:24 +msgid "Name" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:42 +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:31 +msgid "Created" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:49 +msgid "Custom Code" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:55 +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:44 +msgid "Client" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:61 +msgid "Category" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:67 +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:62 +msgid "Coupon Report" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:80 +#: ecommerce/static/js/views/course_list_view.js:25 +msgid "Search..." +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:107 +#: ecommerce/static/js/views/course_list_view.js:52 +msgid "Next" +msgstr "" + +#: ecommerce/static/js/views/coupon_list_view.js:108 +#: ecommerce/static/js/views/course_list_view.js:53 +msgid "Previous" +msgstr "" + +#. Translators: _START_, _END_, and _TOTAL_ are placeholders. Do NOT translate +#. them. +#: ecommerce/static/js/views/coupon_list_view.js:112 +msgid "Displaying _START_ to _END_ of _TOTAL_ coupons" +msgstr "" + +#. Translators: _MAX_ is a placeholder. Do NOT translate it. +#: ecommerce/static/js/views/coupon_list_view.js:115 +msgid "(filtered from _MAX_ total coupons)" +msgstr "" + +#. Translators: _MENU_ is a placeholder. Do NOT translate it. +#: ecommerce/static/js/views/coupon_list_view.js:118 +msgid "Display _MENU_ coupons" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:55 +msgid "Free (Audit)" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:56 +msgid "Free audit track. No certificate." +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:60 +msgid "Verified and Audit" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:61 +#: ecommerce/static/js/views/course_form_view.js:67 +msgid "" +"Paid certificate track with initial verification and Verified Certificate." +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:62 +msgid "Also includes the free audit track." +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:66 +msgid "Verified Only" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:71 +msgid "Professional Education" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:72 +msgid "" +"Paid certificate track with initial verification and Professional Education " +"Certificate" +msgstr "" + +#: ecommerce/static/js/views/course_form_view.js:78 +msgid "" +"Paid certificate track with initial verification and Verified Certificate, " +"and option to purchase credit" +msgstr "" + +#. Translators: _START_, _END_, and _TOTAL_ are placeholders. Do NOT translate +#. them. +#: ecommerce/static/js/views/course_list_view.js:57 +msgid "Displaying _START_ to _END_ of _TOTAL_ courses" +msgstr "" + +#. Translators: _MAX_ is a placeholder. Do NOT translate it. +#: ecommerce/static/js/views/course_list_view.js:60 +msgid "(filtered from _MAX_ total courses)" +msgstr "" + +#. Translators: _MENU_ is a placeholder. Do NOT translate it. +#: ecommerce/static/js/views/course_list_view.js:63 +msgid "Display _MENU_ courses" +msgstr "" + +#: ecommerce/static/js/views/course_list_view.js:69 +msgid "Course" +msgstr "" + +#: ecommerce/static/js/views/course_list_view.js:86 +msgid "Last Edited" +msgstr "" + +#: ecommerce/static/js/views/dynamic_catalog_view.js:74 +msgid "Seat title" +msgstr "" + +#: ecommerce/static/js/views/dynamic_catalog_view.js:78 +msgid "Seat type" +msgstr "" + +#: ecommerce/static/js/views/enterprise_coupon_detail_view.js:28 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:42 +msgid "Can be used multiple times by one customer" +msgstr "" + +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 +msgid "Create and Add More" +msgstr "" + +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:38 +msgid "Status" +msgstr "" + +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:50 +msgid "Enterprise Customer" +msgstr "" + +#: ecommerce/static/js/views/enterprise_coupon_list_view.js:56 +msgid "Enterprise Customer Catalog" +msgstr "" + +#: ecommerce/static/js/views/form_view.js:71 +msgid "A course with the specified ID already exists." +msgstr "" + +#: ecommerce/static/js/views/form_view.js:81 +#: ecommerce/static/js/views/form_view.js:174 +msgid "Error!" +msgstr "" + +#: ecommerce/static/js/views/form_view.js:127 +msgid "Saving..." +msgstr "" + +#: ecommerce/static/js/views/form_view.js:136 +msgid "Please complete all required fields." +msgstr "" + +#: ecommerce/static/js/views/form_view.js:161 +msgid "An error occurred while saving the data." +msgstr "" + +#: ecommerce/static/js/views/offer_view.js:198 +msgid "Ellipsis" +msgstr "" + +#: ecommerce/static/js/views/offer_view.js:205 +msgid "Load the records for page " +msgstr "" + +#: ecommerce/static/js/views/offer_view.js:212 +msgid "Load the records for the next page" +msgstr "" + +#: ecommerce/static/js/views/offer_view.js:220 +msgid "Load the records for the previous page" +msgstr "" + +#: ecommerce/static/js/views/provider_selection_view.js:33 +msgid "Select" +msgstr "" + +#: ecommerce/static/js/views/provider_selection_view.js:34 +msgid "Selected" +msgstr "" + +#: ecommerce/static/vendor-extensions/oscar/js/order_actions.js:21 +msgid "Order %(order_number)s has been fulfilled." +msgstr "" + +#: ecommerce/static/vendor-extensions/oscar/js/order_actions.js:27 +msgid "Failed to fulfill order %(order_number)s: %(error)s" +msgstr "" + +#: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:24 +msgid "Refund #%(refund_id)s has been processed." +msgstr "" + +#: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:33 +msgid "Error" +msgstr "" + +#: ecommerce/static/vendor-extensions/oscar/js/refund_list.js:36 +msgid "" +"Failed to process refund #%(refund_id)s: %(error)s. Please try again, or " +"contact the E-Commerce Development Team." +msgstr "" diff --git a/ecommerce/conf/locale/fr/LC_MESSAGES/django.mo b/ecommerce/conf/locale/fr/LC_MESSAGES/django.mo index c090b14c64f..ab3d5f93b27 100644 Binary files a/ecommerce/conf/locale/fr/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/fr/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/fr/LC_MESSAGES/django.po b/ecommerce/conf/locale/fr/LC_MESSAGES/django.po index 4ff364c5675..d382e9f938a 100644 --- a/ecommerce/conf/locale/fr/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/fr/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ # Translators: # Translators: # Translators: -# Abdessamad Derraz , 2021 +# Abdessamad Derraz , 2021,2023 # alexis swyngedauw, 2022 # Aurélien Croq , 2017 # Fanny Dos Reis, 2015 @@ -26,10 +26,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-09-04 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: alexis swyngedauw, 2022\n" -"Language-Team: French (http://www.transifex.com/open-edx/edx-platform/language/fr/)\n" +"Last-Translator: Abdessamad Derraz , 2021,2023\n" +"Language-Team: French (http://app.transifex.com/open-edx/edx-platform/language/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -58,325 +58,325 @@ msgid "" " Be careful when re-activating this switch!" msgstr "L'administration usager a été désactivée en raison de la charge sur la base de données. Cette fonctionnalité peut être restaurée en activant la Waffle switch {switch_name}. Soyez prudent lorsque vous réactivez cette switch!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "URL de base du LMS pour les sites personalisé / microsites" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "URL racine du site de LMS (par ex. https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "Chemin vers le thème du site personalisé" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Systèmes de paiemet" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "Liste séparée par des virgules contenant les noms des processeurs de paiement : 'cybersource,paypal' " -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "Processeur de paiement côté client" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "Processeur qui sera utilisé pour les paiements côté client" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "paramètres OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "Chaîne au format JSON contenant les paramètres OAuth du backend." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "Clé de segment" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Clé API d'écriture de segment" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "Email provenant de" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "Adresse à partir de laquelle les emails sont envoyés." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Activer les codes d'inscriptions" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Activer la création des codes d'inscriptions." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "Email du support de paiement" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "Contact email pour les questions de support de paiement." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "Paiement support url " -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "URL pour les questions de sup port de paiement." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "Nom du cookie UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "Nom du cookie stockant les données UTM." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "Nom du cookie de l'affilié" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "Nom du cookie stockant les données de l'affilié." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "Envoyer un courriel de notification de remboursement" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "Activer la vérification SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "Activer la vérification SDN à la caisse." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "[Déprécié] URL de l'API SDN du Trésor américain" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "[Déprécié] Clé API SDN du Trésor américain" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "listes SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "Une liste séparée par des virgules des listes OFAC du Trésor pour vérifier contre." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Activation de compte requise" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "Exige des utilisateurs d'activer leur compte avant de leur permettre de racheter un coupon." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "Optimiser l'URL source de l'extrait" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Ce script sera téléchargé sur chaque page." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "Domaine de base des cookies" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "Domaine de base des cookies utilisé pour partager des cookies entre les services." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "Activer le contrôle de l'embargo" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "Activer le contrôle d'embargo à la caisse." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "URL de l'API de course discovery" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "Activer Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "Activer une offre partielle de programme." -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "Permettre l'application des offres de programme aux cours restants non inscrits ou non vérifiés" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "Clé Secrète du Portail Hubspot" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "Clé secrète du portail Hubspot pour authentification" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "Activer les microfrontend pour la page du panier" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "Utilisez l'implémentation microfrontend de la page de panier au lieu du modèle côté serveur" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "URL du microfrontend de paiement" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "URL du microfrontend de paiement (utilisé si l'activation du microfrontend de la page de panier est activé)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "nom de famille" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "Prénom" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Nom complet" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "identifiant de l'usager du LMS" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Nom" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "EnterpriseCustomer UUID" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "UUID pour un EnterpriseCustomer à partir du service Enterprise." -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "Le coupon n'existe pas." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "Le bon de réduction n'est pas encore valide." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "Le bon de réduction est expiré." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "Product [{product}] non disponible pour achat." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "Ce bon de réduction n'est plus disponible." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "Ce code de coupon est invalide" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "Le bon n'est pas applicable pour votre panier actuel." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Bienvenue sur edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "Choisissez les cours sélectionnés par votre organisation pour commencer à apprendre." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "Code non fourni." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU non fourni." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "Le produit n'existe pas." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Vous n'êtes pas autorisé à utiliser ce coupon. " -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "Impossible de trouver un client d'enterprise correspondant pour ce coupon." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "Ce coupon n'est pas valide pour l'achat d'un parcours. Essayez le sur un cours individuel du parcours. Si vous avez besoin d'aide, contactez notre soutien." -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "Jeton de consentement de partage de données non valide fourni." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "Vous avez déjà acheté une place pour {course}." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "Une réduction a été appliquée, avec l'aimable autorisation de {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "Ce code promotionnel est invalide pour ce cours. Essayez un autre cours." #: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 @@ -393,43 +393,43 @@ msgstr "Dernière date / heure à laquelle la vérification de ce produit peut msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "Échec de la publication des données de commerce pour {course_id} au niveau du LMS." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Audit" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Crédit " -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Honneur" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Professionnel" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Vérifié" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "Formation pour cadres" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "Formation exécutive rémunérée" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "Formation des cadres non rémunérée" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "Bootcamp payant" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "Bootcamp non rémunéré" @@ -491,150 +491,160 @@ msgid "" "questions." msgstr "Ce code n'est pas valide pour votre courriel. Veuillez vous connecter avec le courriel attribué au code ou contactez votre responsable de formation pour des questions supplémentaires." -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "UUID de Client Entreprise" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "UUID du catalogue du Client Entreprise" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "Type de rabais" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "Valeur de réduction" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "Type de remise de contrat" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "Remise de contrat" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "Montant de la facture prépayée" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "ID d'opportunité Salesforce" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "Adresses courriels" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "Courriels séparés par des virgules qui recevront les alertes d'offre" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "Fréquence des courriels d'offres" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "Le nombre maximum d'inscriptions qui peut utiliser cette offre." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "La valeur maximum en euros EUR que cette offre permet." -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "Le nombre maximal d'inscriptions, par un utilisateur, qui peuvent utiliser cette offre." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "Le montant maximum en EUR qui peut être utilisé en utilisant cette offre par un utilisateur." -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Date de début" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Date de fin" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "Limite d'inscription" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "Limite de réservation" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "Limite d'inscription par utilisateur" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "Limite de réservation par utilisateur" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "Assurez vous que les nouvelles valeurs sont plus grandes ou égales à la quantité utilisé de ({offer_enrollments})." -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "L'Opportunity ID Salesforce doit comporter 18 caractères alphanumériques et commencer par 006." -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "Assurez vous que la valeur est plus grande ou égale à 0." -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "Assurez-vous que la nouvelle valeur doit être supérieure ou égale à la valeur consommée ({consumed_discount:.2f})." -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "L'adresse courriel {email} n'est pas une adresse courriel valide." -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "Une offre existe déjà pour cette combinaison d'Entreprise et de Catalogue." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "Les remises en pourcentage ne peuvent être supérieures à 100%." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "Une date de début doit être spécifiée lors de la spécification d'une date de fin." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "La date de début doit avoir lieu avant la date de fin." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "Plus de 2 chiffres après la décimale ne sont pas autorisés pour la valeur absolue." -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "Ce champ est obligatoire lorsque le type de remise de contrat est absolu." -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "Rabais de type {} fourni par {} pour {}." @@ -804,41 +814,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "Nous n'avons pas trouvé suffisamment d'informations à votre sujet pour effectuer le calcul." -#: ecommerce/extensions/api/serializers.py:256 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "EXPIRÉ" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "INACTIF" -#: ecommerce/extensions/api/serializers.py:259 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "ACTIF" -#: ecommerce/extensions/api/serializers.py:693 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "Les produits doivent avoir un type d'attestation." -#: ecommerce/extensions/api/serializers.py:696 -#: ecommerce/extensions/api/serializers.py:741 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Les produits doivent avoir un prix." -#: ecommerce/extensions/api/serializers.py:703 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "Vous devez fournir un UUID de cours pour créer des droits de cours." -#: ecommerce/extensions/api/serializers.py:737 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "les produits doivent indiquer si un vérification d’identifiant est nécessaire." -#: ecommerce/extensions/api/serializers.py:808 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "Classe de produit invalide [{product_class}] demandée" -#: ecommerce/extensions/api/serializers.py:840 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -846,39 +856,40 @@ msgid "" " been saved." msgstr "Le cours [{course_id}] n'a pas été publié sur le LMS car le switch[publish_course_modes_to_lms] est désactivée. Afin d'éviter les SKU fantômes, les données n'ont pas été sauvegardées." -#: ecommerce/extensions/api/serializers.py:1510 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Code d'inscription" -#: ecommerce/extensions/api/serializers.py:1511 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Code de réduction" -#: ecommerce/extensions/api/serializers.py:1978 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "Numéro de commande incorrect ou la commande {} n'existe pas." -#: ecommerce/extensions/api/serializers.py:2033 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "Échec de l'attribution du nouveau bon de réduction. Erreur: {}" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "Votre commande {} ne peut pas être remboursée car le coupon '{}' ne peut pas être remboursé." -#: ecommerce/extensions/api/serializers.py:2082 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "Impossible de créer un nouveau bon pour la commande: {}" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "Aucun SKUs fourni." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "Les produits avec les SKU(s) [{skus}] n'existent pas." @@ -916,84 +927,84 @@ msgstr "Type d'attribut" msgid "Text Attribute" msgstr "Attribut texte" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "En raison des contrôles à l'exportation, nous ne pouvons pas vous permettre d'accéder à ce cours en ce moment." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "Cliquez ici pour acheter une inscription pour vous-même" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "Cliquez ici pour acheter plusieurs places dans ce cours" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "Le code promotionnel '{code}' a expiré." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "Le code promotionnel '{code}' n'est pas actif." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "Le code promotionnel '{code}' n'est pas disponible. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "Le code promotionnel '{code}' est invalide pour ce panier." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "Le code promotionnel '{code}' n'est pas valide pour ce panier pour un achat groupé." -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "Le code promotionnel '{code}' a été ajouté au panier." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "Le panier ne donne pas droit à un code promotionnel {code}." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "Impossible d'appliquer le code '{code}'; Il requiert un accord de partage de données." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "Après avoir terminé votre commande, vous serez en mesure de sélectionner des dates de cours à partir de votre tableau de bord." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "Après avoir terminé votre commande, vous serez automatiquement inscrit à la piste vérifiée du cours." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "Après avoir terminé votre commande, vous recevrez un crédit pour votre cours." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "Après avoir terminé votre commande, vous serez automatiquement inscrit au cours." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1010,7 +1021,7 @@ msgid "" "{paragraph_end}" msgstr "{paragraph_start}En achetant, vous et votre organisation acceptez les conditions suivantes:{paragraph_end} {ul_start} {li_start}Chaque code est valable pour le cours couvert et ne peut être utilisé qu'une seule fois{li_end} {li_start} Vous êtes responsable de la distribution des codes aux apprenants de votre organisation.{li_end} {li_start}Chaque code expirera dans un an à compter de la date d'achat ou, si cela se produit plus tôt, une fois que le cours est fermé.{li_end} {li_start}Si un cours n'est pas désigné comme étant autogéré, vous devez confirmer qu'une exécution du cours est disponible avant l'expiration.{li_end} {li_start}Vous ne pouvez pas revendre les codes à des tiers.{li_end} {li_start}Toutes les ventes de edX for Business sont définitives et ne peuvent faire l'objet d'un remboursement.{li_end}{ul_end} {paragraph_start}Vous recevrez un e-mail à {user_email} avec votre/vos code(s) d'inscription.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1019,39 +1030,39 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "{strong_start}Achat juste pour vous?{strong_end}{paragraph_start}Si vous achetez un code unique pour quelqu'un d'autre, passer à la caisse. Cependant, si vous êtes l'apprenant {link_start}retourner{link_end} pour vous inscrire directement.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "Vous avez déjà acheté ces produits" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "Aucun produit n'est disponible à l'achat." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "quantité mise à jour avec succès" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "Votre panier n'a pu être mis à jour. Veuillez corriger les erreurs de validation ci-dessous." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "Vous avez déjà ajouté un coupon promotionnel '{code}' à votre panier." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "Le coupon '{code}' n'existe pas." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "Aucun code promotionnel avec id '%s'" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "Le code promotionnel '%s' a été retiré de votre panier." @@ -1122,6 +1133,20 @@ msgstr "Statut" msgid "Failed to retrieve enrollment data." msgstr "Impossible de récupérer les données d'inscriptions." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "Jour 3" @@ -1154,23 +1179,23 @@ msgstr "Automatique" msgid "Manual" msgstr "Manuel" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "Identification du catalogue de cours à partir du service Discovery." -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "UUID pour un EnterpriseCustomerCatalog à partir du service Enterprise." -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "Nom EnterpriseCustomer" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "UUID EnterpriseCustomerCatalog" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1181,35 +1206,35 @@ msgstr "UUID EnterpriseCustomerCatalog" msgid "Program UUID" msgstr "Programme UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "Courriel à l'utilisateur en attente." -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "Code attribué avec succès à l'utilisateur." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "Le code a été utilisé par l'utilisateur." -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "L'e-mail à l'utilisateur a été rejeté." -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "Le code a été révoqué pour cet utilisateur." -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "Activer une version de gabarit." -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "Le courriel a été envoyé." -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "Cet utilisateur devrait recevoir un courriel" @@ -1259,7 +1284,7 @@ msgstr "Cliquez sur 'Enregistrer et continuer édition' pour ajouter au registre msgid "Partner" msgstr "Partenaire" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:259 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Partenaires" @@ -1268,14 +1293,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Discover" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1306,7 +1347,7 @@ msgstr "J'achète pour le compte de mon employeur ou d'une autre organisation pr #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "Il y a eu un problème lors de la récupération de votre panier. Rafraîchissez la page afin d'essayer de nouveau." @@ -1388,11 +1429,11 @@ msgstr "Pourcentage supérieur à 100 non autorisé." #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "transaction refusée" @@ -1437,7 +1478,7 @@ msgid "Line Credit (excl. tax)" msgstr "Ligne de remboursement (excluant les taxes)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1492,7 +1533,7 @@ msgstr "Réclamé" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1828,7 +1869,7 @@ msgstr "Contenu UTM" msgid "UTM Created At" msgstr "UTM créé à" -#: ecommerce/settings/_oscar.py:216 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1841,38 +1882,38 @@ msgstr "UTM créé à" msgid "Dashboard" msgstr "Tableau de bord" -#: ecommerce/settings/_oscar.py:221 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Catalogue" -#: ecommerce/settings/_oscar.py:225 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Produits" -#: ecommerce/settings/_oscar.py:229 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Types de produits" -#: ecommerce/settings/_oscar.py:233 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Catégories" -#: ecommerce/settings/_oscar.py:237 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Intervalles" -#: ecommerce/settings/_oscar.py:241 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Alertes stock faible" -#: ecommerce/settings/_oscar.py:247 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Exécution" -#: ecommerce/settings/_oscar.py:251 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1884,11 +1925,11 @@ msgstr "Exécution" msgid "Orders" msgstr "Commandes" -#: ecommerce/settings/_oscar.py:255 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Statistiques" -#: ecommerce/settings/_oscar.py:263 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1899,25 +1940,25 @@ msgstr "Statistiques" msgid "Refunds" msgstr "Remboursements" -#: ecommerce/settings/_oscar.py:269 ecommerce/settings/_oscar.py:273 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Clients" -#: ecommerce/settings/_oscar.py:277 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Demandes d'alerte de stock" -#: ecommerce/settings/_oscar.py:283 ecommerce/settings/_oscar.py:287 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "Offres" -#: ecommerce/settings/_oscar.py:291 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "Coupons" -#: ecommerce/settings/_oscar.py:297 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Rapports" @@ -2034,89 +2075,98 @@ msgid "" "you can print this page." msgstr "Votre commande est complète. Vous recevrez un message de confirmation et vos code(s) d'inscriptions au {link_start}{email}{link_end}. Si vous avez besoin d'un reçu, vous pouvez imprimer cette page." -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "Numéro de commande :" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "Méthode de paiement :" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "Date de commande :" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "Information sur la commande" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Description" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "Prix de l'item" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Quantité :" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "Description :" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "Prix de l'item :" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "Sous-total" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "%(voucher_discount_amount)s off" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "Rabais de type %(type)s fourni par %(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "Rabais pour votre première mise-à-jour" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "Rabais de type %(type)s fourni." -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "Courtoisie de %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Total" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "Obtenez vos crédits de cours" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2126,11 +2176,11 @@ msgid "" " course name." msgstr "Pour recevoir un crédit académique pour ce cours, vous devez faire une demande de crédit auprès de l'organisation qui offre le crédit. Vous pouvez trouver un lien vers le site Web de l'organisation sur votre {link_start}{lms_dashboard_url}{link_middle}tableau de bord{link_end}, près du nom du cours.." -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "Aller au tableau de bord" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "Trouver d'autres cours" diff --git a/ecommerce/conf/locale/fr/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/fr/LC_MESSAGES/djangojs.mo index 1b351575e63..65501ef9cb4 100644 Binary files a/ecommerce/conf/locale/fr/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/fr/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/fr/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/fr/LC_MESSAGES/djangojs.po index 0b4747735a0..d4af96268d8 100644 --- a/ecommerce/conf/locale/fr/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/fr/LC_MESSAGES/djangojs.po @@ -23,10 +23,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Abdessamad Derraz , 2021\n" -"Language-Team: French (http://www.transifex.com/open-edx/edx-platform/language/fr/)\n" +"Language-Team: French (http://app.transifex.com/open-edx/edx-platform/language/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -325,11 +325,11 @@ msgstr "Code d'Inscription" msgid "Discount Code" msgstr "Code de remise" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Enregistrer les modifications" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Créer le bon de réduction" @@ -471,7 +471,7 @@ msgstr "Type de place" msgid "Can be used multiple times by one customer" msgstr "Peut être utilisé plusieurs fois par un client" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "Créer et ajouter plus" diff --git a/ecommerce/conf/locale/fr_CA/LC_MESSAGES/django.mo b/ecommerce/conf/locale/fr_CA/LC_MESSAGES/django.mo index d452fd5abcf..4f7e3d85a18 100644 Binary files a/ecommerce/conf/locale/fr_CA/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/fr_CA/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/fr_CA/LC_MESSAGES/django.po b/ecommerce/conf/locale/fr_CA/LC_MESSAGES/django.po index 45c62b6ec82..0f40a5cc9b7 100644 --- a/ecommerce/conf/locale/fr_CA/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/fr_CA/LC_MESSAGES/django.po @@ -53,7 +53,7 @@ # Pedro Guimarães Martins , 2014 # PETIT Yannick , 2013 # Pierre-Emmanuel Colas , 2015 -# Pierre Mailhot , 2016-2022 +# Pierre Mailhot , 2016-2023 # qcappart , 2014 # Ramarohetra Malalatiana , 2014 # Régis Millet , 2015 @@ -75,10 +75,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Pierre Mailhot , 2016-2022\n" -"Language-Team: French (Canada) (http://www.transifex.com/open-edx/edx-platform/language/fr_CA/)\n" +"Last-Translator: Pierre Mailhot , 2016-2023\n" +"Language-Team: French (Canada) (http://app.transifex.com/open-edx/edx-platform/language/fr_CA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -107,332 +107,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "L'administration usager a été désactivée en raison de la charge sur la base de données. Cette fonctionnalité peut être restaurée en activant la Waffle switch {switch_name}. Soyez prudent lorsque vous réactivez cette switch!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "LMS url de base pour site personnalisé / microsite" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "URL de la racine du LMS pour ce site (i.e. https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "Chemin vers le thème personnalisé du site" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Processeurs de paiement" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "Liste séparée par des virgules des noms de processeurs: 'cybersource,paypal,netbanx'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "Processeur de paiement côté client" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "Processeur qui sera utilisé pour les paiements côté client" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "Paramètres OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "Chaîne JSON contenant les paramètres OAuth d'arrière-plan." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "Clé de segment" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Clé API d'écriture de segment" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "Du courriel" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "Adresse à partir de laquelle les courriels sont envoyés." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Activer les codes d'inscriptions" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Activer la création des codes d'inscriptions." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "Courriel du support de paiement" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "Contact courriel pour les questions de support de paiement." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "url du support de paiement" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "URL pour les questions de support de paiement." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "Nom du cookie UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "Nom du cookie stockant les données UTM." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "Nom du cookie de l'affilié" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "Nom du cookie stockant les données de l'affilié." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "Envoyer un courriel de notification de remboursement" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "Activer la vérification SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "Activer la vérification SDN à la caisse." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "[Deprecated] US Treasury SDN API URL" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "[Deprecated] US Treasury SDN API key" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" -msgstr "listes SDN" +msgstr "Listes SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "Une liste séparée par des virgules des listes OFAC du Trésor pour vérifier contre." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Activation de compte obligatoire" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "Exige des utilisateurs d'activer leur compte avant de leur permettre de racheter un coupon." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "Optimiser l'URL source de l'extrait" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Ce script sera téléchargé sur chaque page." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "Domaine de base des cookies" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "Domaine de base des cookies utilisé pour partager des cookies entre les services." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "Activer le contrôle de l'embargo" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "Activer le contrôle d'embargo à la caisse." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "URL de l'API de course discovery" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "Activer Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" -msgstr "Activer une offre partielle de programme." +msgstr "Activer une offre partielle de programme" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "Permettre l'application des offres de programme aux cours restants non inscrits ou non vérifiés" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "Clé Secrète du Portail Hubspot" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "Clé secrète du portail Hubspot pour authentification" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "Activer les microfrontend pour la page du panier" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "Utilisez l'implémentation microfrontend de la page de panier au lieu du modèle côté serveur" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "URL du microfrontend de paiement" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "URL du microfrontend de paiement (utilisé si l'activation du microfrontend de la page de panier est activé)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "nom de famille" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" -msgstr "Prénom" +msgstr "prénom" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Nom complet" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "identifiant de l'usager du LMS" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Nom" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "EnterpriseCustomer UUID" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "UUID pour un EnterpriseCustomer à partir du service Enterprise." -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "Le coupon n'existe pas." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "Ce code promotionnel n'est pas encore valide." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "Ce code promotionnel est expiré." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "Product [{product}] non disponible pour achat." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "Ce code promotionnel n'est plus disponible." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "Ce code promotionnel est invalide." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "Le bon n'est pas applicable à votre panier." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Bienvenue sur EDUlib" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "Choisissez les cours sélectionnés par votre organisation pour commencer à apprendre." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "Code non fourni." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU non fourni." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "Le produit n'existe pas." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Vous n'êtes pas autorisé à utiliser ce coupon." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." -msgstr "Impossible de trouver un client d'enterprise correspondant pour ce coupon." +msgstr "Impossible de trouver un client d'entreprise correspondant pour ce coupon." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "Ce coupon n'est pas valide pour l'achat d'un parcours. Essayez le sur un cours individuel du parcours. Si vous avez besoin d'aide, contactez notre soutien." -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "Jeton de consentement de partage de données non valide fourni." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "Vous avez déjà acheté une place pour {course}." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "Une réduction a été appliquée, gracieuseté de {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "Ce code promotionnel est invalide pour ce cours. Essayez un autre cours." -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "Site" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "Dernière date / heure à laquelle la vérification de ce produit peut être soumise." @@ -442,43 +442,43 @@ msgstr "Dernière date / heure à laquelle la vérification de ce produit peut msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "Échec de la publication des données de commerce pour {course_id} au niveau du LMS." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Audit" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Crédit" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Honneur" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Professionnel" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Vérifié" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "Formation des cadres" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "Formation exécutive rémunérée" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "Formation des cadres non rémunérée" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "Bootcamp payant" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "Bootcamp non rémunéré" @@ -495,7 +495,7 @@ msgid "" "currently enrolled in the course, please try again after all grading is " "complete. If you need additional assistance, please contact the {site_name} " "Support Team." -msgstr "Le crédit n'est pas disponible pour \"{course_name}\". Si vous êtes actuellement inscrit dans ce cours, s'il vous plaît essayer de nouveau après que les notations soient complétées. Si vous avez besoin d'aide supplémentaire, s'il vous plaît contacter l'équipe de support de {site_name}." +msgstr "Le crédit n'est pas disponible pour \"{course_name}\". Si vous êtes actuellement inscrit dans ce cours, s'il vous plaît essayer de nouveau après que les notations soient complétées. Si vous avez besoin d'aide supplémentaire, s'il vous plaît contacter l'équipe de support de {site_name}." #: ecommerce/credit/views.py:75 msgid "" @@ -531,7 +531,7 @@ msgid "" "This coupon has been made available through {new_enterprise}. To redeem this" " coupon, you must first logout. When you log back in, please select " "{new_enterprise} as your enterprise and try again." -msgstr "Ce coupon est disponible grâce à {new_enterprise}. Pour réclamer ce coupon, vous devez d'abord vous déconnecter. Quand vous vous reconnectez, veuillez choisir {new_enterprise} en tant qu'employeur et réessayer." +msgstr "Ce coupon est disponible grâce à {new_enterprise}. Pour réclamer ce coupon, vous devez d'abord vous déconnecter. Quand vous vous reconnectez, veuillez choisir {new_enterprise} en tant qu'employeur et réessayer." #: ecommerce/enterprise/conditions.py:370 msgid "" @@ -540,150 +540,160 @@ msgid "" "questions." msgstr "Ce code n'est pas valide pour votre courriel. Veuillez vous connecter avec le courriel attribué au code ou contactez votre responsable de formation pour des questions supplémentaires." -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "UUID de Client Entreprise" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "UUID du catalogue du Client Entreprise" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "Type de rabais" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "Valeur de réduction" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "Type de remise de contrat" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "Remise de contrat" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "Montant de la facture prépayée" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "Salesforce Opportunity ID" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "Adresses courriels" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "Courriels séparés par des virgules qui recevront les alertes d'offre" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "Fréquence des courriels d'offres" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "Le nombre maximum d'inscriptions qui peut utiliser cette offre." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "La valeur maximum en dollar USD que cette offre permet." -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "Le nombre maximal d'inscriptions, par un utilisateur, qui peuvent utiliser cette offre." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "Le montant maximum en CAD qui peut être utilisé en utilisant cette offre par un utilisateur." -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Date de début" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Date de fin" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "Limite d'inscription" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "Limite de réservation" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "Limite d'inscription par utilisateur" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "Limite de réservation par utilisateur" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "Assurez vous que les nouvelles valeurs sont plus grandes ou égales à la quantité utilisé de ({offer_enrollments})." -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "L'Opportunity ID Salesforce doit comporter 18 caractères alphanumériques et commencer par 006." -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "Assurez vous que la valeur est plus grande ou égale à 0." -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "Assurez-vous que la nouvelle valeur doit être supérieure ou égale à la valeur consommée ({consumed_discount:.2f})." -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "L'adresse courriel {email} n'est pas une adresse courriel valide." -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "Une offre existe déjà pour cette combinaison d'Entreprise et de Catalogue." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." -msgstr "Les remises en pourcentage ne peuvent être supérieures à 100%." +msgstr "Les remises en pourcentage ne peuvent être supérieures à 100 %." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "Une date de début doit être spécifiée lors de la spécification d'une date de fin." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "La date de début doit avoir lieu avant la date de fin." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "Plus de 2 chiffres après la décimale ne sont pas autorisés pour la valeur absolue." -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "Ce champ est obligatoire lorsque le type de remise de contrat est absolu." -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "Rabais de type {} fourni par {} pour {}." @@ -694,7 +704,7 @@ msgstr "Code promotionnel pour entreprise" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:9 #, python-format msgid "Edit Enterprise Offer: %(enterprise_customer_name)s" -msgstr "Editer l'offre d'entreprise: %(enterprise_customer_name)s" +msgstr "Editer l'offre d'entreprise : %(enterprise_customer_name)s" #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:14 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_form.html:47 @@ -853,41 +863,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "Nous n'avons pas trouvé suffisamment d'informations à votre sujet pour effectuer le calcul." -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "EXPIRÉ" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "INACTIF" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "ACTIF" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "Les produits doivent avoir un type d'attestation." -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Les produits doivent avoir un prix." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "Vous devez fournir un UUID de cours pour créer des droits de cours." -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "Les produits doivent indiquer si la vérification d'identité est obligatoire." -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "Classe de produit invalide [{product_class}] demandée" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -895,46 +905,47 @@ msgid "" " been saved." msgstr "Le cours [{course_id}] n'a pas été publié sur le LMS car la switch [publish_course_modes_to_lms] est désactivée. Afin d'éviter les SKU fantômes, les données n'ont pas été sauvegardées." -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Code d'inscription" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Code de réduction" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "Numéro de commande incorrect ou la commande {} n'existe pas." -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" -msgstr "Échec de l'attribution du nouveau bon de réduction. Erreur: {}" +msgstr "Échec de l'attribution du nouveau bon de réduction. Erreur : {}" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "Votre commande {} ne peut pas être remboursée car le coupon '{}' ne peut pas être remboursé." -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" -msgstr "Impossible de créer un nouveau bon pour la commande: {}" +msgstr "Impossible de créer un nouveau bon pour la commande : {}" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "Aucun SKUs fourni." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "Les produits avec les SKU(s) [{skus}] n'existent pas." #: ecommerce/extensions/api/v2/views/baskets.py:467 msgid "Provide username or is_anonymous query param, but not both" -msgstr "Indiquez le nom d'utilisateur ou le paramètre de requête is_anonymous, mais pas les deux." +msgstr "Indiquez le nom d'utilisateur ou le paramètre de requête is_anonymous, mais pas les deux" #: ecommerce/extensions/api/v2/views/products.py:54 #, python-brace-format @@ -965,84 +976,84 @@ msgstr "Type d'attribut" msgid "Text Attribute" msgstr "Attribut texte" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "En raison des contrôles à l'exportation, nous ne pouvons pas vous permettre d'accéder à ce cours en ce moment." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "Cliquez ici pour acheter une inscription pour vous-même" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "Cliquez ici pour acheter plusieurs places dans ce cours" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "Le code promotionnel '{code}' a expiré." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "Le code promotionnel '{code}' n'est pas actif." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "Le code promotionnel '{code}' n'est pas disponible. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "Le code promotionnel '{code}' est invalide pour ce panier." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "Le code promotionnel '{code}' n'est pas valide pour ce panier pour un achat groupé." -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "Le code promotionnel '{code}' a été ajouté au panier." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "Le panier ne donne pas droit à un code promotionnel {code}." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "Impossible d'appliquer le code '{code}'; Il requiert un accord de partage de données." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "Après avoir terminé votre commande, vous serez en mesure de sélectionner des dates de cours à partir de votre tableau de bord." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "Après avoir terminé votre commande, vous serez automatiquement inscrit à la piste vérifiée du cours." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "Après avoir terminé votre commande, vous recevrez un crédit pour votre cours." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "Après avoir terminé votre commande, vous serez automatiquement inscrit au cours." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1059,7 +1070,7 @@ msgid "" "{paragraph_end}" msgstr "{paragraph_start}En effectuant l'achat, vous et votre organisation acceptez les conditions suivantes : {paragraph_end} {ul_start} {li_start}Chaque code est valide pour le cours couvert et ne peut être utilisé qu'une seule fois.{li_end} {li_start}Vous êtes responsable de la distribution des codes aux apprenants dans votre organisation.{li_end} {li_start}Chaque code expirera dans un an à compter de la date d'achat ou, si plus tôt, une fois le cours fermé. {li_end} {li_start}Si un cours n'est pas indiqué comme à votre rythme, vous devez confirmer qu'une session de cours est disponible avant l'expiration. {li_end} {li_start}Vous ne pouvez pas revendre les codes à des tiers.{li_end} {li_start}Toutes les ventes EDUlib pour Entreprises sont finales et ne sont pas éligibles à des remboursements.{li_end}{ul_end} {paragraph_start}Vous recevrez un courriel à l'adresse {user_email} avec votre/vos code(s) d'inscription. {paragraph_end}" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1068,44 +1079,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "{strong_start}Achat juste pour vous?{strong_end}{paragraph_start}Si vous achetez un code unique pour quelqu'un d'autre, passer à la caisse. Cependant, si vous êtes l'apprenant {link_start}retourner{link_end} pour vous inscrire directement.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "Vous avez déjà acheté ces produits" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "Aucun produit n'est disponible à l'achat." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "quantité mise à jour avec succès" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "Votre panier n'a pu être mis à jour. Veuillez corriger les erreurs de validation ci-dessous." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "Vous avez déjà ajouté un coupon promotionnel '{code}' à votre panier." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "Le coupon '{code}' n'existe pas." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "Aucun code promotionnel avec id '%s'" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "Le code promotionnel '%s' a été retiré de votre panier." -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "Dernière date / heure à laquelle ce produit peut être acheté." @@ -1171,6 +1182,20 @@ msgstr "Statut" msgid "Failed to retrieve enrollment data." msgstr "Impossible de récupérer les données d'inscriptions." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "Nombre de tentatives d'échec des actions client IAP (par exemple, création de paiement, exécution de paiement)" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "Nombre de jours écoulés pour récupérer les remboursements Android." + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "ID de la transaction d'origine" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "Jour 3" @@ -1203,23 +1228,23 @@ msgstr "Automatique" msgid "Manual" msgstr "Manuel" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "Identification du catalogue de cours à partir du service Discovery." -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "UUID pour un EnterpriseCustomerCatalog à partir du service Enterprise." -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "EnterpriseCustomer Nom" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "EnterpriseCustomerCatalog UUID" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1230,35 +1255,35 @@ msgstr "EnterpriseCustomerCatalog UUID" msgid "Program UUID" msgstr "UUID du programme" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "Courriel à l'utilisateur en attente." -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "Code attribué avec succès à l'utilisateur." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "Le code a été utilisé par l'utilisateur." -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "Le courriel à l'utilisateur a rebondi." -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "Le code a été révoqué pour cet utilisateur." -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "Activer une version de gabarit." -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "Le courriel a été envoyé." -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "Cet utilisateur devrait recevoir un courriel" @@ -1308,7 +1333,7 @@ msgstr "Cliquez sur 'Enregistrer et continuer édition' pour ajouter au registre msgid "Partner" msgstr "Partenaire" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Partenaires" @@ -1317,14 +1342,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "Diners" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Discover" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "JCB" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "Union Pay" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "Inconnu" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1355,10 +1396,10 @@ msgstr "J'achète pour le compte de mon employeur ou d'une autre organisation pr #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." -msgstr "Il y a eu un problème lors de la récupération de votre panier. Rafraîchissez la page afin d'essayer de nouveau." +msgstr "Il y a eu un problème lors de la récupération de votre panier. Rafraîchissez la page afin d'essayer de nouveau." #: ecommerce/extensions/payment/forms.py:144 msgid "First Name (required)" @@ -1382,7 +1423,7 @@ msgstr "Ville (obligatoire)" #: ecommerce/extensions/payment/forms.py:151 msgid "State/Province" -msgstr "Etat/Province" +msgstr "État/Province" #: ecommerce/extensions/payment/forms.py:152 msgid "Zip/Postal Code" @@ -1437,11 +1478,11 @@ msgstr "Pourcentage supérieur à 100 non autorisé." #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "transaction refusée" @@ -1453,7 +1494,7 @@ msgid "" "Refund administration has been disabled due to the load on the database. " "This functionality can be restored by activating the {switch_name} Waffle " "switch. Be careful when re-activating this switch!" -msgstr "L'administration des remboursements a été désactivée en raison de la charge sur la base de données. Cette fonctionnalité peut être restaurée en activant la Waffle switch {switch_name}.  Soyez prudent lorsque vous réactivez cette switch!" +msgstr "L'administration des remboursements a été désactivée en raison de la charge sur la base de données. Cette fonctionnalité peut être restaurée en activant la Waffle switch {switch_name}. Soyez prudent lorsque vous réactivez cette switch!" #: ecommerce/extensions/refund/models.py:67 msgid "Order" @@ -1486,7 +1527,7 @@ msgid "Line Credit (excl. tax)" msgstr "Ligne de remboursement (excluant les taxes)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1541,7 +1582,7 @@ msgstr "Réclamé" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1739,7 +1780,7 @@ msgstr "Rapport de code promo pour {coupon_name}" #: ecommerce/extensions/voucher/views.py:40 msgid "" "Failed to find a matching stock record for coupon, report download canceled." -msgstr "Impossible de trouver un enregistrement correspondant pour le coupon, téléchargement du rapport annulé." +msgstr "Impossible de trouver une fiche correspondante pour le coupon, téléchargement du rapport annulé." #: ecommerce/invoice/models.py:13 msgid "Not Paid" @@ -1877,7 +1918,7 @@ msgstr "Contenu UTM" msgid "UTM Created At" msgstr "UTM créé à" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1890,38 +1931,38 @@ msgstr "UTM créé à" msgid "Dashboard" msgstr "Tableau de bord" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Catalogue" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Produits" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Types de produits" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Catégories" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Gammes" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Alertes d'inventaire faible" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Exécution" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1933,11 +1974,11 @@ msgstr "Exécution" msgid "Orders" msgstr "Commandes" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Statistiques" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1948,25 +1989,25 @@ msgstr "Statistiques" msgid "Refunds" msgstr "Remboursements" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Clients" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Demandes d'alerte de stock" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "Offres" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "Bons" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Rapports" @@ -1988,7 +2029,7 @@ msgstr "Développement" #: ecommerce/templates/base.html:71 msgid "Version:" -msgstr "Version : " +msgstr "Version :" #: ecommerce/templates/coupons/_offer_error.html:4 #: ecommerce/templates/coupons/offer.html:5 @@ -2083,89 +2124,98 @@ msgid "" "you can print this page." msgstr "Votre commande est complète. Vous recevrez un message de confirmation et vos code(s) d'inscriptions au {link_start}{email}{link_end}. Si vous avez besoin d'un reçu, vous pouvez imprimer cette page." -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "Votre commande est terminée. Si vous avez besoin d'un reçu, vous pouvez imprimer cette page. {next_start} Prochaines étapes :{next_end} 1. Vérifiez votre boîte de réception pour un courriel de confirmation de commande de Get Smarter.{next_line} 2 : Suivez les instructions du courriel pour terminer votre inscription." + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "Votre commande est terminée. Si vous avez besoin d'un reçu, vous pouvez imprimer cette page." -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "Numéro de commande :" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "Méthode de paiement :" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "Date de commande :" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "Information sur la commande" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Description" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "Prix de l'item" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" -msgstr "Quantité:" +msgstr "Quantité :" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "Description :" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "Prix de l'item :" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "Sous-total" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "%(voucher_discount_amount)s off" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "Rabais de type %(type)s fourni par %(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "Rabais pour votre première mise-à-jour" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "Rabais de type %(type)s fourni." -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "Courtoisie de %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Total" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "Obtenez vos crédits de cours" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2173,13 +2223,13 @@ msgid "" "organization’s website on your " "{link_start}{lms_dashboard_url}{link_middle}dashboard{link_end}, next to the" " course name." -msgstr "Pour recevoir un crédit académique pour ce cours, vous devez faire une demande de crédit auprès de l'organisation qui offre le crédit. Vous pouvez trouver un lien vers le site Web de l'organisation sur votre {link_start}{lms_dashboard_url}{link_middle}tableau de bord{link_end}, près du nom du cours.." +msgstr "Pour recevoir un crédit académique pour ce cours, vous devez faire une demande de crédit auprès de l'organisation qui offre le crédit. Vous pouvez trouver un lien vers le site Web de l'organisation sur votre {link_start}{lms_dashboard_url}{link_middle}tableau de bord{link_end}, près du nom du cours." -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "Aller au tableau de bord" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "Trouver d'autres cours" @@ -2213,11 +2263,11 @@ msgstr "Sélectionnez" #: ecommerce/templates/edx/credit/_provider_detail.html:16 msgid "Credits: " -msgstr "Crédits:" +msgstr "Crédits :" #: ecommerce/templates/edx/credit/_provider_detail.html:17 msgid "Price: " -msgstr "Prix:" +msgstr "Prix :" #: ecommerce/templates/edx/credit/_provider_detail.html:27 #, python-format @@ -2269,7 +2319,7 @@ msgstr "Rabais :" #: ecommerce/templates/edx/credit/checkout.html:60 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:127 msgid "Total:" -msgstr "Total:" +msgstr "Total :" #: ecommerce/templates/edx/credit/checkout.html:89 msgid "You deserve it." @@ -2315,7 +2365,7 @@ msgstr "\n Veuillez lire {link_start}notre FAQ pour voir les #: ecommerce/templates/edx/email_confirmation_required.html:16 msgid "You are enrolling in: " -msgstr "Vous vous inscrivez à : " +msgstr "Vous vous inscrivez à :" #: ecommerce/templates/edx/email_confirmation_required.html:26 #, python-format @@ -2602,11 +2652,11 @@ msgstr "Payer" msgid "" "{strong_start}Note:{strong_end} To complete your enrollment, select Checkout" " or Checkout with PayPal." -msgstr "{strong_start}Note:{strong_end} Pour compléter votre inscription, sélectionnez Payer or Payer avec PayPal.." +msgstr "{strong_start}Note :{strong_end} Pour compléter votre inscription, sélectionnez Payer or Payer avec PayPal.." #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:185 msgid "Have questions?" -msgstr "Avez-vous des questions ?" +msgstr "Avez-vous des questions?" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:186 msgid "Please read our FAQs to view common questions about our certificates." @@ -2764,7 +2814,7 @@ msgstr "Vous recevez ce courriel parce que vous avez acheté une place dans le c #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:2 msgid "Receipt Confirmation for: " -msgstr "Confirmation de reçu pour:" +msgstr "Confirmation de reçu pour :" #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:11 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:12 @@ -2790,7 +2840,7 @@ msgstr "Confirmation de paiement" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:27 msgid "Payment confirmation for:" -msgstr "Confirmation de paiement pour:" +msgstr "Confirmation de paiement pour :" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:55 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:4 @@ -2847,7 +2897,7 @@ msgstr "\nVous recevez ce message car vous avez acheté des heures créditées p #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:2 msgid "Payment confirmation for: " -msgstr "Confirmation de paiement pour:" +msgstr "Confirmation de paiement pour :" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:6 #, python-format @@ -2896,7 +2946,7 @@ msgstr "Distribuer un code par apprenant avant la date d'expiration." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:35 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:10 msgid "Pro tip: Track which code is associated with which person." -msgstr "Astuce Pro: Suivez quel code est associé à quelle personne." +msgstr "Astuce Pro : Suivez quel code est associé à quelle personne." #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:36 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:11 @@ -3116,7 +3166,7 @@ msgstr "Montée en gamme" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:148 msgid "Product Type:" -msgstr "Type de produit:" +msgstr "Type de produit :" #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:169 msgid "Upload, change or remove images" @@ -3693,7 +3743,7 @@ msgstr "Montant" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:467 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Product:" -msgstr "Produit:" +msgstr "Produit :" #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:467 msgid "quantity" @@ -3854,7 +3904,7 @@ msgstr "Confirmer le traitement du remboursement" msgid "" "Are you sure you want to issue a full refund and revoke student's " "enrollment?" -msgstr "Etes-vous certain de vouloir émettre un remboursement complet et révoquer l'inscription de l'étudiant?" +msgstr "Êtes-vous certain de vouloir émettre un remboursement complet et révoquer l'inscription de l'étudiant?" #: ecommerce/templates/oscar/dashboard/partials/refund_action_modal.html:14 msgid "" diff --git a/ecommerce/conf/locale/fr_CA/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/fr_CA/LC_MESSAGES/djangojs.mo index 0855b0083d1..6adbffaf74f 100644 Binary files a/ecommerce/conf/locale/fr_CA/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/fr_CA/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/fr_CA/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/fr_CA/LC_MESSAGES/djangojs.po index febc08fde2c..161d0af5473 100644 --- a/ecommerce/conf/locale/fr_CA/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/fr_CA/LC_MESSAGES/djangojs.po @@ -9,15 +9,15 @@ # Translators: # Translators: # Translators: -# Pierre Mailhot , 2016-2020,2022 +# Pierre Mailhot , 2016-2020,2022-2023 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" -"Last-Translator: Pierre Mailhot , 2016-2020,2022\n" -"Language-Team: French (Canada) (http://www.transifex.com/open-edx/edx-platform/language/fr_CA/)\n" +"Last-Translator: Pierre Mailhot , 2016-2020,2022-2023\n" +"Language-Team: French (Canada) (http://app.transifex.com/open-edx/edx-platform/language/fr_CA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -41,7 +41,7 @@ msgstr "Cette valeur doit être une date." #: ecommerce/static/js/models/coupon_model.js:36 msgid "At least one seat type must be selected." -msgstr "Au moins un type de place doit être sélectionné" +msgstr "Au moins un type de place doit être sélectionné." #: ecommerce/static/js/models/coupon_model.js:72 msgid "This field must be empty or contain 1-16 alphanumeric characters." @@ -50,7 +50,7 @@ msgstr "Ce champ doit être vide ou contenir 1-16 caractères alphanumériques." #: ecommerce/static/js/models/coupon_model.js:81 #, javascript-format msgid "Email domain {%s} is invalid." -msgstr "Domain de courriel {%s} est invalide." +msgstr "Domaine de courriel {%s} est invalide." #: ecommerce/static/js/models/coupon_model.js:98 msgid "Must occur after start date" @@ -316,11 +316,11 @@ msgstr "Code d'inscription" msgid "Discount Code" msgstr "Code de réduction" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Enregistrer les modifications" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Créer un coupon" @@ -376,7 +376,7 @@ msgstr "Afficher _START_ à _END_ de _TOTAL_ coupons" #. Translators: _MAX_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/coupon_list_view.js:115 msgid "(filtered from _MAX_ total coupons)" -msgstr "(filtré à partir de _MAX_ coupons totaux)" +msgstr "(filtré à partir de _MAX_ coupons totaux)" #. Translators: _MENU_ is a placeholder. Do NOT translate it. #: ecommerce/static/js/views/coupon_list_view.js:118 @@ -462,7 +462,7 @@ msgstr "Type de place" msgid "Can be used multiple times by one customer" msgstr "Peut être utilisé plusieurs fois par un client" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "Créer et ajouter plus" diff --git a/ecommerce/conf/locale/fr_FR/LC_MESSAGES/django.mo b/ecommerce/conf/locale/fr_FR/LC_MESSAGES/django.mo index d3bdca2f73e..29deabcd8b5 100644 Binary files a/ecommerce/conf/locale/fr_FR/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/fr_FR/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/fr_FR/LC_MESSAGES/django.po b/ecommerce/conf/locale/fr_FR/LC_MESSAGES/django.po index 816f3f5fee1..81fd2f02b12 100644 --- a/ecommerce/conf/locale/fr_FR/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/fr_FR/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Steve Raffner, 2020\n" -"Language-Team: French (France) (http://www.transifex.com/open-edx/edx-platform/language/fr_FR/)\n" +"Language-Team: French (France) (http://app.transifex.com/open-edx/edx-platform/language/fr_FR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/fr_FR/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/fr_FR/LC_MESSAGES/djangojs.mo index ccf60d85486..c578d707e2c 100644 Binary files a/ecommerce/conf/locale/fr_FR/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/fr_FR/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/fr_FR/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/fr_FR/LC_MESSAGES/djangojs.po index 6122d6efa22..20bce42ea3e 100644 --- a/ecommerce/conf/locale/fr_FR/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/fr_FR/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: 0169fee580ff5de3f9b7241d14f30af9_5f30934 <1948a2319336319ed4429b6139c8c1c2_916898>, 2020\n" -"Language-Team: French (France) (http://www.transifex.com/open-edx/edx-platform/language/fr_FR/)\n" +"Language-Team: French (France) (http://app.transifex.com/open-edx/edx-platform/language/fr_FR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/gan/LC_MESSAGES/django.mo b/ecommerce/conf/locale/gan/LC_MESSAGES/django.mo index fb687759744..273510dfc0c 100644 Binary files a/ecommerce/conf/locale/gan/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/gan/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/gan/LC_MESSAGES/django.po b/ecommerce/conf/locale/gan/LC_MESSAGES/django.po index 95d75b664ed..9653d9071f2 100644 --- a/ecommerce/conf/locale/gan/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/gan/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Chinese (Gan) (http://www.transifex.com/open-edx/edx-platform/language/gan/)\n" +"Language-Team: Chinese (Gan) (http://app.transifex.com/open-edx/edx-platform/language/gan/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/gan/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/gan/LC_MESSAGES/djangojs.mo index 2f529c90b03..540235cadd8 100644 Binary files a/ecommerce/conf/locale/gan/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/gan/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/gan/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/gan/LC_MESSAGES/djangojs.po index 29466430015..e0122c6cd5a 100644 --- a/ecommerce/conf/locale/gan/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/gan/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Chinese (Gan) (http://www.transifex.com/open-edx/edx-platform/language/gan/)\n" +"Language-Team: Chinese (Gan) (http://app.transifex.com/open-edx/edx-platform/language/gan/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/gl/LC_MESSAGES/django.mo b/ecommerce/conf/locale/gl/LC_MESSAGES/django.mo index 303543e2b5b..0888f1e6b04 100644 Binary files a/ecommerce/conf/locale/gl/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/gl/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/gl/LC_MESSAGES/django.po b/ecommerce/conf/locale/gl/LC_MESSAGES/django.po index 87edfaf9483..3d32e9e4890 100644 --- a/ecommerce/conf/locale/gl/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/gl/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Xabier Sánchez Santos , 2018\n" -"Language-Team: Galician (http://www.transifex.com/open-edx/edx-platform/language/gl/)\n" +"Language-Team: Galician (http://app.transifex.com/open-edx/edx-platform/language/gl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/gl/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/gl/LC_MESSAGES/djangojs.mo index b8c5e414183..d8dfda9c780 100644 Binary files a/ecommerce/conf/locale/gl/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/gl/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/gl/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/gl/LC_MESSAGES/djangojs.po index c6a4bfdc5c5..b57ea4c49ff 100644 --- a/ecommerce/conf/locale/gl/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/gl/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Xabier Sánchez Santos , 2018\n" -"Language-Team: Galician (http://www.transifex.com/open-edx/edx-platform/language/gl/)\n" +"Language-Team: Galician (http://app.transifex.com/open-edx/edx-platform/language/gl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/gu/LC_MESSAGES/django.mo b/ecommerce/conf/locale/gu/LC_MESSAGES/django.mo index 9b9a8eedb27..036f4c99967 100644 Binary files a/ecommerce/conf/locale/gu/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/gu/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/gu/LC_MESSAGES/django.po b/ecommerce/conf/locale/gu/LC_MESSAGES/django.po index 474eab9629e..20d67eec1e9 100644 --- a/ecommerce/conf/locale/gu/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/gu/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Gujarati (http://www.transifex.com/open-edx/edx-platform/language/gu/)\n" +"Language-Team: Gujarati (http://app.transifex.com/open-edx/edx-platform/language/gu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/gu/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/gu/LC_MESSAGES/djangojs.mo index d387a593c50..e2aeb509d85 100644 Binary files a/ecommerce/conf/locale/gu/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/gu/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/gu/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/gu/LC_MESSAGES/djangojs.po index 0a59c6a4fa0..871a4dc5192 100644 --- a/ecommerce/conf/locale/gu/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/gu/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Gujarati (http://www.transifex.com/open-edx/edx-platform/language/gu/)\n" +"Language-Team: Gujarati (http://app.transifex.com/open-edx/edx-platform/language/gu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/hak/LC_MESSAGES/django.mo b/ecommerce/conf/locale/hak/LC_MESSAGES/django.mo index 2aeed9e8cb2..1594f1dbc20 100644 Binary files a/ecommerce/conf/locale/hak/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/hak/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/hak/LC_MESSAGES/django.po b/ecommerce/conf/locale/hak/LC_MESSAGES/django.po index 76f1f9458fe..aff53e5f591 100644 --- a/ecommerce/conf/locale/hak/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/hak/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Chinese (Hakka) (http://www.transifex.com/open-edx/edx-platform/language/hak/)\n" +"Language-Team: Chinese (Hakka) (http://app.transifex.com/open-edx/edx-platform/language/hak/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/hak/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/hak/LC_MESSAGES/djangojs.mo index 7bc9d17e5ad..08331b3b945 100644 Binary files a/ecommerce/conf/locale/hak/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/hak/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/hak/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/hak/LC_MESSAGES/djangojs.po index 10a4e22fa4b..6dba4e931f2 100644 --- a/ecommerce/conf/locale/hak/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/hak/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Chinese (Hakka) (http://www.transifex.com/open-edx/edx-platform/language/hak/)\n" +"Language-Team: Chinese (Hakka) (http://app.transifex.com/open-edx/edx-platform/language/hak/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/he/LC_MESSAGES/django.mo b/ecommerce/conf/locale/he/LC_MESSAGES/django.mo index 719d0f1c2f1..6a5229c433b 100644 Binary files a/ecommerce/conf/locale/he/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/he/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/he/LC_MESSAGES/django.po b/ecommerce/conf/locale/he/LC_MESSAGES/django.po index 2bd5886375a..505d275b2f3 100644 --- a/ecommerce/conf/locale/he/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/he/LC_MESSAGES/django.po @@ -22,10 +22,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Yaron Shahrabani , 2022\n" -"Language-Team: Hebrew (http://www.transifex.com/open-edx/edx-platform/language/he/)\n" +"Language-Team: Hebrew (http://app.transifex.com/open-edx/edx-platform/language/he/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -54,332 +54,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "כתובת url בסיסית של LMS עבור אתר/מיקרו-אתר מותאם אישית" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "שתול כתובת URL של ה-LMS של אתר זה (לדוגמה, https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "נתיב לנושא אתר מותאם אישית" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "מעבדי תשלום" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "רשימה מופרדת-פסיק של שמות מעבד: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "מעבד תשלום מצד הלקוח" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "מעבד שישמש לתשלומים מצד הלקוח" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "הגדרות OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "מחרוזת JSON כוללת הגדרות Backend." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "מפתח מקטע" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "כתיבת מקטע/מפתח API." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "מדואר אלקטרוני" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "כתובת שממנה נשלחות הודעות דואר אלקטרוני." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "אפשר קודי הרשמה" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "אפשר יצירת קודי הרשמה." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "דואר אלקטרוני לתמיכה בנושאי תשלום" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "צור קשר בדואר אלקטרוני לתמיכה בנושאי תשלום." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "כתובת URL לתמיכה בנושאי תשלום" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "כתובת URL לתמיכה בנושאי תשלום." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "שם קובץ עוגיה UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "שם קובץ עוגיה המאחסן נתוני UTM." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "צרף שם קובץ עוגיה" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "שם קובץ עוגיה המאחסן נתוני UTM." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "שם מלא" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "שם" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "קוד קופון זה אינו חוקי עדיין." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "תוקף קוד קופון זה פג." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "המוצר [{product}] אינו זמין לרכישה." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "קודו קופון זה אינו זמין יותר." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "קוד קופון זה אינו חוקי." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "השובר אינו רלוונטי לסל הנוכחי שלך." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "הקוד לא סופק." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "ה-SKU לא סופק." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "המוצר אינו קיים." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "אינך זכאי להשתמש בשובר זה." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "אתר" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "התאריך/השעה האחרונים שניתן לשלוח אימות עבור מוצר זה." @@ -389,43 +389,43 @@ msgstr "התאריך/השעה האחרונים שניתן לשלוח אימות msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "פרסום נתוני מסחר עבור {course_id} אל LMS נכשל." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "שומע חופשי" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "נקודות זכות" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "מסלול תעודה" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "מקצועי" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "מאומת" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -487,150 +487,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -800,41 +810,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "לא פעיל" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "פעיל" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "חייב להיות מחיר למוצרים." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "המוצרים חייבים לציין אם נדרש אימות המזהה." -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "נדרש סיווג מוצר לא חוקי [{product_class}]." -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -842,39 +852,40 @@ msgid "" " been saved." msgstr "הקורס [{course_id}] לא פורסם ל-LMS משום שהמתג [publish_course_modes_to_lms] מושבת. על מנת להימנע מ-SKUs רפאים, לא נשמרו הנתונים." -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "קוד הרשמה" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "קוד הנחה" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -912,84 +923,84 @@ msgstr "סוג מאפיין" msgid "Text Attribute" msgstr "מאפיין טקסט" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "לחץ כאן על מנת לרכוש הרשמה עבור עצמך בלבד" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "לחץ כאן על מנת לרכוש מושבים מרובים בקורס זה" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "פג תוקפו של קוד השובר '{code}'." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "קוד השובר '{code}' נוסף לסל." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1006,7 +1017,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1015,44 +1026,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "הוספת כבר קוד שובר '{code}' לסל שלך." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "קוד שובר '{code}' אינו קיים." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "התאריך/השעה האחרונים שניתן לרכוש מוצר זה." @@ -1118,6 +1129,20 @@ msgstr "סטטוס" msgid "Failed to retrieve enrollment data." msgstr "אחזור נתוני ההרשמה נכשל." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1150,23 +1175,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1177,35 +1202,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1255,7 +1280,7 @@ msgstr "לחץ על 'שמור והמשך בעריכה' על מנת להוסיף msgid "Partner" msgstr "שותף" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "שותפים" @@ -1264,14 +1289,30 @@ msgid "American Express" msgstr "אמריקן אקספרס" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "מצא" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "מסטרכארד" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "ויזה" @@ -1302,7 +1343,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "אירעה בעיה בשחזור הסל שלך. רענן את העמוד כדי לנסות שוב." @@ -1384,11 +1425,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1433,7 +1474,7 @@ msgid "Line Credit (excl. tax)" msgstr "שורת האשראי (ללא מס)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1488,7 +1529,7 @@ msgstr "מומש" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1824,7 +1865,7 @@ msgstr "תוכן UTM" msgid "UTM Created At" msgstr "UTM נוצר ב-" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1837,38 +1878,38 @@ msgstr "UTM נוצר ב-" msgid "Dashboard" msgstr "לוח בקרה" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "קטלוג" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "מוצרים" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "סוגי מוצר" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "קטגוריות" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "טווחים" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "התראות על מלאי נמוך" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "השלמה" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1880,11 +1921,11 @@ msgstr "השלמה" msgid "Orders" msgstr "הזמנות" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "סטטיסטיקה" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1895,25 +1936,25 @@ msgstr "סטטיסטיקה" msgid "Refunds" msgstr "החזרים כספיים" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "לקוחות" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "בקשות להתראה על מלאי" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "הצעות" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "תלושים" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "דוחות" @@ -2030,89 +2071,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "מספר הזמנה:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "שיטת תשלום:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "תאריך הזמנה:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "מידע על ההזמנה" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "תיאור" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "מחיר פריט" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "כמות:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "תיאור:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "מחיר פריט:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "קבל את נקודות הקורס שלך" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2122,11 +2172,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/he/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/he/LC_MESSAGES/djangojs.mo index 133627c708a..bcaae70bc40 100644 Binary files a/ecommerce/conf/locale/he/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/he/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/he/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/he/LC_MESSAGES/djangojs.po index e85def7734d..2f3d9daeaee 100644 --- a/ecommerce/conf/locale/he/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/he/LC_MESSAGES/djangojs.po @@ -18,10 +18,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: e2f_HE c1 , 2016-2017\n" -"Language-Team: Hebrew (http://www.transifex.com/open-edx/edx-platform/language/he/)\n" +"Language-Team: Hebrew (http://app.transifex.com/open-edx/edx-platform/language/he/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -320,11 +320,11 @@ msgstr "קוד הרשמה" msgid "Discount Code" msgstr "קוד הנחה" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "שמור שינויים" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "צור שובר" @@ -466,7 +466,7 @@ msgstr "סוג מושב" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/he_IL/LC_MESSAGES/django.mo b/ecommerce/conf/locale/he_IL/LC_MESSAGES/django.mo index 43930d514f8..e5175064373 100644 Binary files a/ecommerce/conf/locale/he_IL/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/he_IL/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/he_IL/LC_MESSAGES/django.po b/ecommerce/conf/locale/he_IL/LC_MESSAGES/django.po index 14927c11d86..93733df5ad3 100644 --- a/ecommerce/conf/locale/he_IL/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/he_IL/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Hebrew (Israel) (http://www.transifex.com/open-edx/edx-platform/language/he_IL/)\n" +"Language-Team: Hebrew (Israel) (http://app.transifex.com/open-edx/edx-platform/language/he_IL/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/he_IL/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/he_IL/LC_MESSAGES/djangojs.mo index 07d19f6c405..73ba9c3a9be 100644 Binary files a/ecommerce/conf/locale/he_IL/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/he_IL/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/he_IL/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/he_IL/LC_MESSAGES/djangojs.po index ae331c3f023..c4da6af4c0c 100644 --- a/ecommerce/conf/locale/he_IL/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/he_IL/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Hebrew (Israel) (http://www.transifex.com/open-edx/edx-platform/language/he_IL/)\n" +"Language-Team: Hebrew (Israel) (http://app.transifex.com/open-edx/edx-platform/language/he_IL/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/hi/LC_MESSAGES/django.mo b/ecommerce/conf/locale/hi/LC_MESSAGES/django.mo index 03190971826..da109849fad 100644 Binary files a/ecommerce/conf/locale/hi/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/hi/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/hi/LC_MESSAGES/django.po b/ecommerce/conf/locale/hi/LC_MESSAGES/django.po index 6f26540129a..c20fd2532af 100644 --- a/ecommerce/conf/locale/hi/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/hi/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Akshay Garg <64akshay@gmail.com>, 2015\n" -"Language-Team: Hindi (http://www.transifex.com/open-edx/edx-platform/language/hi/)\n" +"Language-Team: Hindi (http://app.transifex.com/open-edx/edx-platform/language/hi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "पूरा नाम " -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/hi/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/hi/LC_MESSAGES/djangojs.mo index 41f244ef46a..77f5581d879 100644 Binary files a/ecommerce/conf/locale/hi/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/hi/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/hi/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/hi/LC_MESSAGES/djangojs.po index fbf536f5daf..790f6d61062 100644 --- a/ecommerce/conf/locale/hi/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/hi/LC_MESSAGES/djangojs.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Manish Manish , 2021\n" -"Language-Team: Hindi (http://www.transifex.com/open-edx/edx-platform/language/hi/)\n" +"Language-Team: Hindi (http://app.transifex.com/open-edx/edx-platform/language/hi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,11 +317,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -463,7 +463,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/hr/LC_MESSAGES/django.mo b/ecommerce/conf/locale/hr/LC_MESSAGES/django.mo index 08f7156fe96..be676d15f72 100644 Binary files a/ecommerce/conf/locale/hr/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/hr/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/hr/LC_MESSAGES/django.po b/ecommerce/conf/locale/hr/LC_MESSAGES/django.po index 981449a9edd..f11117af619 100644 --- a/ecommerce/conf/locale/hr/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/hr/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Croatian (http://www.transifex.com/open-edx/edx-platform/language/hr/)\n" +"Language-Team: Croatian (http://app.transifex.com/open-edx/edx-platform/language/hr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/hr/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/hr/LC_MESSAGES/djangojs.mo index 38adc23b19e..221abdc6fd2 100644 Binary files a/ecommerce/conf/locale/hr/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/hr/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/hr/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/hr/LC_MESSAGES/djangojs.po index c189d533577..b4b25903e53 100644 --- a/ecommerce/conf/locale/hr/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/hr/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Croatian (http://www.transifex.com/open-edx/edx-platform/language/hr/)\n" +"Language-Team: Croatian (http://app.transifex.com/open-edx/edx-platform/language/hr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ht/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ht/LC_MESSAGES/django.mo index 68146d97e81..dcedcd52b1d 100644 Binary files a/ecommerce/conf/locale/ht/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ht/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ht/LC_MESSAGES/django.po b/ecommerce/conf/locale/ht/LC_MESSAGES/django.po index 38dd74c10b2..5d197330e7c 100644 --- a/ecommerce/conf/locale/ht/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ht/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Haitian (Haitian Creole) (http://www.transifex.com/open-edx/edx-platform/language/ht/)\n" +"Language-Team: Haitian (Haitian Creole) (http://app.transifex.com/open-edx/edx-platform/language/ht/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ht/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ht/LC_MESSAGES/djangojs.mo index 8e1e631b819..3618a7171ec 100644 Binary files a/ecommerce/conf/locale/ht/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ht/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ht/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ht/LC_MESSAGES/djangojs.po index ea5371985e4..33a0f53abb5 100644 --- a/ecommerce/conf/locale/ht/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ht/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Haitian (Haitian Creole) (http://www.transifex.com/open-edx/edx-platform/language/ht/)\n" +"Language-Team: Haitian (Haitian Creole) (http://app.transifex.com/open-edx/edx-platform/language/ht/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/hu/LC_MESSAGES/django.mo b/ecommerce/conf/locale/hu/LC_MESSAGES/django.mo index faf4c4b6993..816082c77ba 100644 Binary files a/ecommerce/conf/locale/hu/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/hu/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/hu/LC_MESSAGES/django.po b/ecommerce/conf/locale/hu/LC_MESSAGES/django.po index 447bd84255c..769d2e5c9aa 100644 --- a/ecommerce/conf/locale/hu/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/hu/LC_MESSAGES/django.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Charles Nehez , 2015\n" -"Language-Team: Hungarian (http://www.transifex.com/open-edx/edx-platform/language/hu/)\n" +"Language-Team: Hungarian (http://app.transifex.com/open-edx/edx-platform/language/hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,332 +47,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -382,43 +382,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -480,150 +480,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -793,41 +803,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -835,39 +845,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -905,84 +916,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -999,7 +1010,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1008,44 +1019,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1111,6 +1122,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1143,23 +1168,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1170,35 +1195,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1248,7 +1273,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1257,14 +1282,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1295,7 +1336,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1377,11 +1418,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1426,7 +1467,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1481,7 +1522,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1817,7 +1858,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1830,38 +1871,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1873,11 +1914,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1888,25 +1929,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2023,89 +2064,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2115,11 +2165,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/hu/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/hu/LC_MESSAGES/djangojs.mo index dce845c7097..845f17ce4db 100644 Binary files a/ecommerce/conf/locale/hu/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/hu/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/hu/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/hu/LC_MESSAGES/djangojs.po index 17e519a017f..31795991bab 100644 --- a/ecommerce/conf/locale/hu/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/hu/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Charles Nehez , 2015\n" -"Language-Team: Hungarian (http://www.transifex.com/open-edx/edx-platform/language/hu/)\n" +"Language-Team: Hungarian (http://app.transifex.com/open-edx/edx-platform/language/hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/hy_AM/LC_MESSAGES/django.mo b/ecommerce/conf/locale/hy_AM/LC_MESSAGES/django.mo index 75919144ca0..aeb5e9798d5 100644 Binary files a/ecommerce/conf/locale/hy_AM/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/hy_AM/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/hy_AM/LC_MESSAGES/django.po b/ecommerce/conf/locale/hy_AM/LC_MESSAGES/django.po index e43f8a66214..c5770e25de7 100644 --- a/ecommerce/conf/locale/hy_AM/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/hy_AM/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Armenian (Armenia) (http://www.transifex.com/open-edx/edx-platform/language/hy_AM/)\n" +"Language-Team: Armenian (Armenia) (http://app.transifex.com/open-edx/edx-platform/language/hy_AM/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/hy_AM/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/hy_AM/LC_MESSAGES/djangojs.mo index 7efee45faa8..d4742406652 100644 Binary files a/ecommerce/conf/locale/hy_AM/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/hy_AM/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/hy_AM/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/hy_AM/LC_MESSAGES/djangojs.po index ad2c706d2ad..310707b2dcf 100644 --- a/ecommerce/conf/locale/hy_AM/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/hy_AM/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Armenian (Armenia) (http://www.transifex.com/open-edx/edx-platform/language/hy_AM/)\n" +"Language-Team: Armenian (Armenia) (http://app.transifex.com/open-edx/edx-platform/language/hy_AM/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/id/LC_MESSAGES/django.mo b/ecommerce/conf/locale/id/LC_MESSAGES/django.mo index 7b6d6066bea..77e0aec0050 100644 Binary files a/ecommerce/conf/locale/id/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/id/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/id/LC_MESSAGES/django.po b/ecommerce/conf/locale/id/LC_MESSAGES/django.po index dc1e6f55bd0..121583efd13 100644 --- a/ecommerce/conf/locale/id/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/id/LC_MESSAGES/django.po @@ -10,16 +10,17 @@ # Translators: # Translators: # Aprisa Chrysantina , 2019 +# Faizar Septiawan , 2023 # Romandito Mahendrayudha , 2016 # Yayang Dwijayani Panggi , 2016 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Aprisa Chrysantina , 2019\n" -"Language-Team: Indonesian (http://www.transifex.com/open-edx/edx-platform/language/id/)\n" +"Last-Translator: Faizar Septiawan , 2023\n" +"Language-Team: Indonesian (http://app.transifex.com/open-edx/edx-platform/language/id/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,332 +49,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "Url dasar LMS untuk situs kustom/situs mikro" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "Root URL untuk LMS situs ini (contoh https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "Path ke tema situs kustom" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Prosesor pembayaran" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "Comma-separated list of processor names: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "Prosesor pembayaran sisi klien" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "Prosesor yang akan digunakan untuk pembayaran dari sisi klien" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "Pengaturan OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "String JSON yang berisi pengaturan backend OAuth." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "Kunci segmen" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Segment write/API key." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "Dari email" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "Alamat asal pengiriman email." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Aktifkan kode pendaftaran" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Aktifkan pembuatan kode pendaftaran." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "Email dukungan pembayaran" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "Email untuk permasalahan terkait pembayaran" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "Url dukungan pembayaran" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "URL untuk masalah terkait pembayaran." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "Nama Cookie UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "Nama cookie penyimpanan data UTM." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "Nama Cookie Afiliasi" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "Nama cookie penyimpanan data afiliasi." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "Kirimkan email notifikasi refund" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "Aktifkan pemeriksaan SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "Aktifkan pemeriksaan SDN saat checkout." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "Daftar SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "Daftar terpisah koma untuk OFAC Treasury untuk pemeriksaan." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Memerlukan Aktivasi Akun" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "Mengharuskan pengguna untuk mengaktivasi akun mereka sebelum menukar kupon." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "Optimizely snippet source URL" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Script akan diload di setiap halaman." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "Aktifkan Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "Aktifkan Penawaran Program Parsial" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Nama Lengkap" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Nama" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "UUID EnterpriseCustomer" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "Kupon tidak ditemukan" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "Kode kupon ini belum valid." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "Kode kupon ini telah kadaluarsa." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "Produk [{product}] tidak dapat dibeli." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "Kode kupon ini sudah tidak tersedia." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "Kode kupon ini tidak valid." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "Voucher tidak dapat digunakan untuk barang di dalam keranjang Anda." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Selamat datang di edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "Silakan pilih kursus yang disediakan organisasi Anda untuk mulai belajar." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "Kode tidak tersedia." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU tidak tersedia." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "Produk tidak ditemukan." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Anda tidak dapat menggunakan kupon ini." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "Tidak dapat menemukan Pelanggan Enterprise untuk kupon ini." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "Token consent data sharing tidak valid." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "Anda telah membeli {course}." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "Diskon dari {enterprise_customer_name} telah diaplikasikan." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "Kode kupon ini tidak valid untuk kursus ini. Coba kursus lainnya." -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "Situs" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "Tanggal/waktu terakhir untuk verifikasi produk ini." @@ -383,43 +384,43 @@ msgstr "Tanggal/waktu terakhir untuk verifikasi produk ini." msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "Gagal menerbitkan data komersial untuk {course_id} ke LMS." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Audit" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Kredit" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Kehormatan" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Profesional" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Terverifikasi" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -481,150 +482,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "UUID Pelanggan Enterprise" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "UUID Katalog Pelanggan Enterprise" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "Jenis Diskon" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "Jumlah Diskon" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Tanggal Mulai" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Tanggal Berakhir" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -794,41 +805,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "TIDAK AKTIF" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "AKTIF" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "Produk harus memiliki jenis sertifikat." -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Produk harus memiliki harga." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -836,39 +847,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Kode diskon" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "SKU tidak ditemukan." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -906,84 +918,84 @@ msgstr "Jenis Atribut" msgid "Text Attribute" msgstr "Atribut Teks" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "Setelah menyelesaikan pesanan Anda, Anda dapat memilih tanggal kursus dari dashboard Anda." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "Setelah menyelesaikan pesanan Anda, Anda akan terdaftar secara otomatis di jalur terverifikasi kursus." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "Setelah menyelesaikan pesanan Anda, Anda akan menerima kredit untuk kursus Anda." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "Setelah menyelesaikan pesanan Anda, Anda secara otomatis akan terdaftar dalam kursus." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1000,7 +1012,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1009,44 +1021,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1112,6 +1124,20 @@ msgstr "Status" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1144,23 +1170,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1171,35 +1197,35 @@ msgstr "" msgid "Program UUID" msgstr "UUID Program" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1249,7 +1275,7 @@ msgstr "" msgid "Partner" msgstr "Mitra" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Mitra" @@ -1258,14 +1284,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1296,7 +1338,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1378,11 +1420,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1427,7 +1469,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1482,7 +1524,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1818,7 +1860,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1831,38 +1873,38 @@ msgstr "" msgid "Dashboard" msgstr "Dashboard" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1874,11 +1916,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1889,25 +1931,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Laporkan" @@ -2024,89 +2066,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "Subtotal" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2116,11 +2167,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/id/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/id/LC_MESSAGES/djangojs.mo index fc340e0caa7..70d90ec53e2 100644 Binary files a/ecommerce/conf/locale/id/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/id/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/id/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/id/LC_MESSAGES/djangojs.po index 3687e239a3f..4b993efd814 100644 --- a/ecommerce/conf/locale/id/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/id/LC_MESSAGES/djangojs.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Stefania Trabucchi , 2019\n" -"Language-Team: Indonesian (http://www.transifex.com/open-edx/edx-platform/language/id/)\n" +"Language-Team: Indonesian (http://app.transifex.com/open-edx/edx-platform/language/id/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,11 +317,11 @@ msgstr "Kode Pendaftaran" msgid "Discount Code" msgstr "Kode Diskon" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Simpan Perubahan" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Buat Kupon" @@ -463,7 +463,7 @@ msgstr "Tipe posisi" msgid "Can be used multiple times by one customer" msgstr "Dapat digunakan beberapa kali oleh satu kustomer" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/id_ID/LC_MESSAGES/django.mo b/ecommerce/conf/locale/id_ID/LC_MESSAGES/django.mo index b8f42781baa..6c7d4febaba 100644 Binary files a/ecommerce/conf/locale/id_ID/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/id_ID/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/id_ID/LC_MESSAGES/django.po b/ecommerce/conf/locale/id_ID/LC_MESSAGES/django.po index a2e202b1829..df01e648e05 100644 --- a/ecommerce/conf/locale/id_ID/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/id_ID/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Indonesian (Indonesia) (http://www.transifex.com/open-edx/edx-platform/language/id_ID/)\n" +"Language-Team: Indonesian (Indonesia) (http://app.transifex.com/open-edx/edx-platform/language/id_ID/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/id_ID/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/id_ID/LC_MESSAGES/djangojs.mo index e7b4575fd43..6cebe5860f8 100644 Binary files a/ecommerce/conf/locale/id_ID/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/id_ID/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/id_ID/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/id_ID/LC_MESSAGES/djangojs.po index d28d492e6e6..8bfb25aade7 100644 --- a/ecommerce/conf/locale/id_ID/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/id_ID/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Indonesian (Indonesia) (http://www.transifex.com/open-edx/edx-platform/language/id_ID/)\n" +"Language-Team: Indonesian (Indonesia) (http://app.transifex.com/open-edx/edx-platform/language/id_ID/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/is/LC_MESSAGES/django.mo b/ecommerce/conf/locale/is/LC_MESSAGES/django.mo index 5ede8e6de3e..4c10f627218 100644 Binary files a/ecommerce/conf/locale/is/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/is/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/is/LC_MESSAGES/django.po b/ecommerce/conf/locale/is/LC_MESSAGES/django.po index 654790d246a..63a9b6e0b76 100644 --- a/ecommerce/conf/locale/is/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/is/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Icelandic (http://www.transifex.com/open-edx/edx-platform/language/is/)\n" +"Language-Team: Icelandic (http://app.transifex.com/open-edx/edx-platform/language/is/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/is/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/is/LC_MESSAGES/djangojs.mo index ac400e269b1..a8ae418fafd 100644 Binary files a/ecommerce/conf/locale/is/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/is/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/is/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/is/LC_MESSAGES/djangojs.po index 12544297841..60745bf613b 100644 --- a/ecommerce/conf/locale/is/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/is/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Davíð Elvar Másson , 2016\n" -"Language-Team: Icelandic (http://www.transifex.com/open-edx/edx-platform/language/is/)\n" +"Language-Team: Icelandic (http://app.transifex.com/open-edx/edx-platform/language/is/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/it/LC_MESSAGES/django.mo b/ecommerce/conf/locale/it/LC_MESSAGES/django.mo index f8f3b96935c..801791d3ea7 100644 Binary files a/ecommerce/conf/locale/it/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/it/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/it/LC_MESSAGES/django.po b/ecommerce/conf/locale/it/LC_MESSAGES/django.po index ce45e9e2a9f..8d08f8c46ab 100644 --- a/ecommerce/conf/locale/it/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/it/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: ASEV Empoli , 2020\n" -"Language-Team: Italian (http://www.transifex.com/open-edx/edx-platform/language/it/)\n" +"Language-Team: Italian (http://app.transifex.com/open-edx/edx-platform/language/it/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/it/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/it/LC_MESSAGES/djangojs.mo index 6fbd0ea9dd2..e929a7261a2 100644 Binary files a/ecommerce/conf/locale/it/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/it/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/it/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/it/LC_MESSAGES/djangojs.po index 63badd1c8a2..cd228b6f282 100644 --- a/ecommerce/conf/locale/it/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/it/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: ASEV Empoli , 2020\n" -"Language-Team: Italian (http://www.transifex.com/open-edx/edx-platform/language/it/)\n" +"Language-Team: Italian (http://app.transifex.com/open-edx/edx-platform/language/it/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/it_IT/LC_MESSAGES/django.mo b/ecommerce/conf/locale/it_IT/LC_MESSAGES/django.mo index 41f40f34060..84fef9a0322 100644 Binary files a/ecommerce/conf/locale/it_IT/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/it_IT/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/it_IT/LC_MESSAGES/django.po b/ecommerce/conf/locale/it_IT/LC_MESSAGES/django.po index 19321b8d9c1..99383b9e8c5 100644 --- a/ecommerce/conf/locale/it_IT/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/it_IT/LC_MESSAGES/django.po @@ -12,16 +12,16 @@ # Claude Almansi , 2015 # Domenico Casanica , 2021 # Giorgio Attorresi , 2015 -# Mauri Macera, 2021 +# 20bdf6b5822f7ccbe16f09a657dbe357_e29decb, 2021 # Stefania Trabucchi , 2021 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Domenico Casanica , 2021\n" -"Language-Team: Italian (Italy) (http://www.transifex.com/open-edx/edx-platform/language/it_IT/)\n" +"Language-Team: Italian (Italy) (http://app.transifex.com/open-edx/edx-platform/language/it_IT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -50,332 +50,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "L'amministrazione degli utenti è stata disabilitata a causa del carico sul database. Questa funzionalità può essere ripristinata attivando l'opzione Waffle {switch_name}. Prestare attenzione quando di riattiva questa opzione." -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "URL di base LMS del sito/microsito personalizzato" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "URL root dell'LMS di questo sito (ad es. https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "Percorso del tema personalizzato del sito" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Responsabili pagamenti" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "Elenco di nomi di responsabili separati da virgole: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "Processore di pagamento del cliente" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "Responsabile utilizzato per i pagamenti del cliente" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "Impostazioni OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "Stringa JSON contenente le impostazioni del backend OAuth." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "Chiave segmento" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Chiave scrittura/API del segmento." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "Mittente email" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "L'indirizzo da cui le email vengono inviate." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Abilita codici di iscrizione" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Abilita la creazione dei codici di iscrizione." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "Email del supporto per i pagamenti" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "Email da contattare per questioni di supporto per i pagamenti." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "URL supporto per i pagamenti" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "URL per questioni di supporto per i pagamenti." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "Nome cookie UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "Nome del cookie che archivia i dati UTM." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "Nome cookie Affiliata" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "Nome del cookie che archivia i dati dell'affiliata." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "Invia notifica del rimborso tramite email" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "Abilita controllo SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "Abilita controllo SDN al momento del checkout" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "[Obsoleto] URL API SDN Tesoro degli Stati Uniti" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "[Obsoleto] Chiave API SDN Tesoro degli Stati Uniti" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "Elenchi SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "Elenco di OFAC del Dipartimento del Tesoro separati da virgola da confrontare." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Richiedi attivazione account" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "Richiede agli utenti di attivare il proprio account prima di consentirgli di riscattare un coupon." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "URL di origine del frammento ottimizzato " -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Questo script verrà caricato in ogni pagina. " -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "Dominio Cookie di base" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "Dominio di base dei cookie utilizzato per condividere i cookie tra i servizi." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "Abilita controllo dell'embargo" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "Abilita controllo dell'embargo al momento del checkout" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "URL API Discovery" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "Abilita Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "Abilita offerte per il programma parziale" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "Consente l'applicazione delle offerte per il programma ai corsi senza iscritti o non verificati " -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "Chiave segreta portale Hubspot" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "Chiave segreta per l'autenticazione al portale Hubspot" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "Abilita Microfrontend per la pagina del Carrello" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "Utilizza l'implementazione microfrontend della pagina del carrello invece del template del server " -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "URL microfrontend del pagamento" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "URL del Microfrontend del Pagamento (utilizzato se è impostato il Microfrontend per la pagina del carrello)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "cognome" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" -msgstr "" +msgstr "nome di battesimo" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Nome e Cognome" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "ID utente LMS" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Nome" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "UUID del Cliente Enterprise" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "UUID di un EnterpriseCustomer del servizio Enterprise." -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "Il coupon non esiste." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "Il codice del coupon non è ancora valido." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "Questo codice di coupon è scaduto." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "Il prodotto [{product}] non è disponibile per l'acquisto." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "Questo codice di coupon non è più disponibile." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "Questo codice di coupon non è valido." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "Il voucher non è applicabile al carrello corrente." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Benvenuto in edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "Scegliere il corso selezionato dalla propria organizzazione per avviare l'apprendimento." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "Codice non fornito." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU non fornito." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "Il prodotto non esiste." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Non si è eleggibili per utilizzare questo coupon." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "Impossibile trovare il Cliente Enterprise corrispondente per questo coupon." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "Questo coupon non è valido per l'acquisto di un programma. Provare a utilizzarlo in un corso individuale del programma. Se si necessita di assistenza, contattare il supporto edX. " -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "Fornito token di consenso alla condivisione dei dati non valido. " -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "Si è già acquistato un posto per {course}." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "È stato applicato uno sconto, offerto da {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "Questo codice coupon non è valido per questo corso. Provare con un corso diverso." -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "Sito" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "Ultimo termine per sottoporre la verifica di questo prodotto." @@ -385,45 +385,45 @@ msgstr "Ultimo termine per sottoporre la verifica di questo prodotto." msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "La pubblicazione dei dati commerciali di {course_id} in LMS non è riuscita." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Revisione" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Credito" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Onore" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Professionale" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Verificato" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "Executive Education" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" -msgstr "" +msgstr "Istruzione esecutiva retribuita" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" -msgstr "" +msgstr "Istruzione esecutiva non retribuita" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" -msgstr "" +msgstr "Bootcamp a pagamento" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" -msgstr "" +msgstr "Bootcamp non pagato" #: ecommerce/credit/views.py:40 msgid "" @@ -483,150 +483,160 @@ msgid "" "questions." msgstr "Questo codice non è valido in abbinamento con questa email. Effettua l'accesso con l'email correttamente abbinata al codice o contattare il proprio Learning Manager per ulteriori domande. " -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "UUID Cliente Enterprise" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "UUID Catalogo Cliente Enterprise" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "Tipo di sconto" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "Valore sconto" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "Tipo di sconto contrattuale" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "Sconto contrattuale" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "Importo fattura prepagata " -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "ID opportunità Salesforce " -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "Indirizzi email" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "Elenco di email separate da virgole che riceveranno gli avvisi di utilizzo dell'offerta" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "Frequenza delle email di utilizzo dell'offerta" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "Il numero massimo di iscritti che potranno riscattare questa offerta." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "L'importo massimo in dollari USD che può essere riscattato da questa offerta. " -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "Il numero massimo di iscritti, per utente, che potranno riscattare questa offerta." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "L'importo massimo in dollari USD che può essere riscattato utilizzando questa offerta da un utente. " -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Data inizio" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Data fine" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "Limite iscrizioni" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "Limite prenotazioni" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "Limite iscrizioni per utente" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "Limite prenotazioni per utente" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "Assicurarsi che il nuovo valore sia maggiore o uguale al valore utilizzato ({offer_enrollments}). " -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." +msgstr "L'ID opportunità Salesforce deve essere composto da 18 caratteri alfanumerici e iniziare con 006." + +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "Assicurarsi che questo valore sia maggiore o uguale a 0. " -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "Assicurarsi che il nuovo valore sia maggiore o uguale al valore utilizzato ({consumed_discount:.2f}). " -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "L'indirizzo email fornito {email} non è un indirizzo email valido. " -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "Esiste già un'offerta per questa combinazione Azienda & Catalogo. " -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "La percentuale degli sconti non può superare il 100%." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "Quando si specifica una data di fine, è necessario specificare una data di inizio. " -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "La data di inizio deve essere antecedente alla data di fine. " -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "Per un valore assoluto non sono consentite più di 2 cifre dopo il decimale. " -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "Questo campo è obbligatorio quando il tipo di sconto del contratto è assoluto. " -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "Sconto di tipo {} effettuato da {} per {}." @@ -796,41 +806,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "Non sono state richiamate sufficienti informazioni sull'utente per eseguire il calcolo. " -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "SCADUTO" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "INATTIVO" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "ATTIVO" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "I prodotti devono avere un tipo di certificato. " -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "I prodotti devono avere un prezzo." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "È necessario fornire un UUID del corso per creare le titolarità al corso. " -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "I prodotti devono indicare se la verifica dell'ID è necessaria." -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "La classe di prodotto [{product_class}] richiesta non è valida." -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -838,39 +848,40 @@ msgid "" " been saved." msgstr "Il corso [{course_id}] non è stato pubblicato su LMS perché lo switch [publish_course_modes_to_lms] è disabilitato. I dati non sono stati salvati per evitare SKU non visibili. " -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Codice iscrizione" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Codice sconto" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "Numero d'ordine non valido oppure l'ordine {} non esiste. " -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "Errore di assegnazione del nuovo voucher coupon. Errore: {}" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "L'ordine {} non può essere rimborsato poiché il coupon '{}' non può essere rimborsato. " -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "Impossibile creare nuovo voucher per l'ordine: {}" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "Nessuno SKU fornito." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "Non esistono prodotti con (gli) SKU [{skus}]." @@ -908,84 +919,84 @@ msgstr "Tipo di attributo" msgid "Text Attribute" msgstr "Attributo testo" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "A causa dei controlli di esportazione, al momento non possiamo consentirti di accedere a questo corso. " -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "Fare clic in questo punto per acquistare un'iscrizione per se stessi " -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "Fare clic in questo punto per acquistare più posti per questo corso" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "Codice coupon '{code}' scaduto." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "Codice coupon '{code}' non attivo." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "Codice coupon '{code}' non disponibile. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "Codice coupon '{code}' non valido per questo carrello." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "Codice coupon '{code}' non valido per questo carrello per un acquisto collegato. " -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "Codice coupon '{code}' aggiunto al carrello." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "Il carrello non è autorizzato per utilizzare il codice coupon {code}." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "Impossibile richiedere il codice '{code}'; necessita del consenso alla condivisione dei dati." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "Dopo aver completato l'ordine, sarà possibile selezionare le date del corso dalla propria dashboard." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "Dopo aver completato l'ordine si verrà automaticamente iscritti al percorso verificato del corso." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "Dopo aver completato l'ordine si riceverà un credito per il proprio corso. " -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "Dopo aver completato l'ordine si verrà automaticamente iscritti al corso." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1002,7 +1013,7 @@ msgid "" "{paragraph_end}" msgstr "{paragraph_start}Attraverso l'acquisto, tu e la tua organizzazione accettate le seguenti condizioni:{paragraph_end} {ul_start} {li_start}Ogni codice è valido per il corso coperto e può essere utilizzato una sola volta.{li_end} {li_start}Sarai responsabile della distribuzione dei codici ai tuoi studenti nell'organizzazione.{li_end} {li_start}Ogni codice scadrà dopo un anno dalla data di acquisto o, se precedente, al termine del corso.{li_end} {li_start}Se un corso non è designato come in apprendimento autonomo, sarà necessario verificare che il corso si svolgerà prima della scadenza. {li_end} {li_start}Non è possibile rivendere i codici a terzi.{li_end} {li_start}Tutte le vendite di edX for Business sono definitive e non possono essere rimborsate.{li_end}{ul_end} {paragraph_start}Riceverai un'email all'indirizzo {user_email} con il tuo codice(i) di iscrizione. {paragraph_end}" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1011,44 +1022,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "{strong_start}Stai acquistando per te stesso?{strong_end}{paragraph_start}Se stai acquistando un codice singolo per qualcun altro, continua con il checkout. Tuttavia, se sei uno studente {link_start}torna qui{link_end} per iscriverti direttamente.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "Hai già acquistato questi prodotti" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "Nessun prodotto disponibile per l'acquisto." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "quantità aggiornata correttamente" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "Impossibile aggiornare il carrello. Correggere gli errori di convalida riportati di seguito." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "Hai già aggiunto un codice coupon '{code}' al tuo carrello." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "Codice coupon '{code}' non esiste. " -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "Impossibile trovare un coupon con id '%s'" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "Il codice coupon '%s' è stato rimosso dal carrello." -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "Ultimo termine per l'acquisto del prodotto." @@ -1114,6 +1125,20 @@ msgstr "Stato" msgid "Failed to retrieve enrollment data." msgstr "Non si è potuto recuperare la data di iscrizione." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "Giorno 3" @@ -1146,23 +1171,23 @@ msgstr "Automatico" msgid "Manual" msgstr "Manuale" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "ID catalogo corsi del servizio Discovery." -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "UUID di un EnterpriseCustomerCatalog del servizio Enterprise." -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "Nome EnterpriseCustomer" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "UUID EnterpriseCustomerCatalog " -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1173,35 +1198,35 @@ msgstr "UUID EnterpriseCustomerCatalog " msgid "Program UUID" msgstr "UUID programma" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "Email utente in sospeso" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "Codice correttamente assegnato all'utente." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "Il codice è stato riscattato dall'utente. " -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "E-mail all'utente respinta. " -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "Il codice per questo utente è stato revocato. " -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "Rendi attiva una particolare versione del template." -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "Email inviata." -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "Questo utente deve ricevere e-mail " @@ -1251,7 +1276,7 @@ msgstr "Fare clic su 'Salva e continua la modifica' per aggiungere record del ma msgid "Partner" msgstr "Partner" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Partner" @@ -1260,14 +1285,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Discover" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1298,7 +1339,7 @@ msgstr "Acquisto per conto del mio datore di lavoro o altra organizzazione profe #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "Si è verificato un problema durante il recupero del tuo carrello. Aggiornare la pagina per riprovare. " @@ -1380,11 +1421,11 @@ msgstr "Non è consentita una percentuale superiore a 100." #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "transazione negata" @@ -1429,7 +1470,7 @@ msgid "Line Credit (excl. tax)" msgstr "Riga di credito (meno tassa)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1484,7 +1525,7 @@ msgstr "Riscosso" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1742,7 +1783,7 @@ msgstr "Esiste già un'offerta per questo programma." #: ecommerce/programs/forms.py:90 #, python-brace-format msgid "{current_date} Discount for the {program_title} {program_type} Program" -msgstr "" +msgstr "{current_date} Sconto per il programma {program_title} {program_type}" #: ecommerce/programs/templates/programs/programoffer_form.html:9 #, python-format @@ -1820,7 +1861,7 @@ msgstr "Contenuto UTM" msgid "UTM Created At" msgstr "UTM creato alle" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1833,38 +1874,38 @@ msgstr "UTM creato alle" msgid "Dashboard" msgstr "Bacheca" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Catalogo" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Prodotti" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Tipi di prodotto" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Categorie" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Intervalli" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Avvisi di scorte in esaurimento" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Evasione" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1876,11 +1917,11 @@ msgstr "Evasione" msgid "Orders" msgstr "Ordini" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Statistiche" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1891,25 +1932,25 @@ msgstr "Statistiche" msgid "Refunds" msgstr "Rimborsi" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Clienti" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Richieste avvisi di magazzino" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "Offerte" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "Voucher" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Rapporti" @@ -2026,89 +2067,98 @@ msgid "" "you can print this page." msgstr "L'ordine è stato completato. Riceverai un messaggio di conferma e il codice(i) di iscrizione all'indirizzo {link_start}{email}{link_end}. Se hai bisogno di una ricevuta, puoi stampare questa pagina. " -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format msgid "" -"Your order is complete. If you need a receipt, you can print this page." +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:68 +msgid "" +"Your order is complete. If you need a receipt, you can print this page." +msgstr "Il tuo ordine è completo. Se hai bisogno di una ricevuta, puoi stampare questa pagina." + +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "Numero ordine:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "Metodo di pagamento:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "Data ordine:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "Informazioni sull'ordine" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Descrizione" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "Prezzo articolo" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Quantità:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "Descrizione:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "Prezzo articolo:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "Subtotale" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "Sconto di %(voucher_discount_amount)s " -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "Sconto di tipo %(type)s effettuato da %(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "Sconto per il primo upgrade" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "È stato apportato lo sconto di tipo %(type)s ." -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "Offerto da %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Totale" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "Ricevi il credito per il tuo corso" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2118,11 +2168,11 @@ msgid "" " course name." msgstr "Per ricevere crediti accademici per questo corso, è necessario richiedere un credito presso l'organizzazione che li offre. Puoi trovare un link al sito web dell'organizzazione sulla tua {link_start}{lms_dashboard_url}{link_middle}dashboard{link_end}, accanto al nome del corso. " -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "Vai alla dashboard" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "Trova altri corsi" diff --git a/ecommerce/conf/locale/it_IT/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/it_IT/LC_MESSAGES/djangojs.mo index 660cd9b600d..733e93cd240 100644 Binary files a/ecommerce/conf/locale/it_IT/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/it_IT/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/it_IT/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/it_IT/LC_MESSAGES/djangojs.po index 573437bc941..dac517f3b5f 100644 --- a/ecommerce/conf/locale/it_IT/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/it_IT/LC_MESSAGES/djangojs.po @@ -16,10 +16,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Domenico Casanica , 2021\n" -"Language-Team: Italian (Italy) (http://www.transifex.com/open-edx/edx-platform/language/it_IT/)\n" +"Language-Team: Italian (Italy) (http://app.transifex.com/open-edx/edx-platform/language/it_IT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -318,11 +318,11 @@ msgstr "Codice iscrizione" msgid "Discount Code" msgstr "Codice Sconto" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Salva Modifiche" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Crea Coupon" @@ -464,7 +464,7 @@ msgstr "Tipo di posto" msgid "Can be used multiple times by one customer" msgstr "Può essere utilizzato più volte da un cliente" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "Crea e Aggiungi altri" diff --git a/ecommerce/conf/locale/ja/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ja/LC_MESSAGES/django.mo index ac8382d76b2..90809ee6af9 100644 Binary files a/ecommerce/conf/locale/ja/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ja/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ja/LC_MESSAGES/django.po b/ecommerce/conf/locale/ja/LC_MESSAGES/django.po index 732b5c2735e..d6460c62e7b 100644 --- a/ecommerce/conf/locale/ja/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ja/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Japanese (http://www.transifex.com/open-edx/edx-platform/language/ja/)\n" +"Language-Team: Japanese (http://app.transifex.com/open-edx/edx-platform/language/ja/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ja/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ja/LC_MESSAGES/djangojs.mo index 85cad63a4ed..ee3e28a5029 100644 Binary files a/ecommerce/conf/locale/ja/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ja/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ja/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ja/LC_MESSAGES/djangojs.po index 8bb04bb7af4..d218ee45416 100644 --- a/ecommerce/conf/locale/ja/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ja/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Japanese (http://www.transifex.com/open-edx/edx-platform/language/ja/)\n" +"Language-Team: Japanese (http://app.transifex.com/open-edx/edx-platform/language/ja/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ja_JP/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ja_JP/LC_MESSAGES/django.mo index 96f2e5eec5f..cd30fd7c6a8 100644 Binary files a/ecommerce/conf/locale/ja_JP/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ja_JP/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ja_JP/LC_MESSAGES/django.po b/ecommerce/conf/locale/ja_JP/LC_MESSAGES/django.po index a8e03d64026..200cbf92ef2 100644 --- a/ecommerce/conf/locale/ja_JP/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ja_JP/LC_MESSAGES/django.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: ayokose , 2015\n" -"Language-Team: Japanese (Japan) (http://www.transifex.com/open-edx/edx-platform/language/ja_JP/)\n" +"Language-Team: Japanese (Japan) (http://app.transifex.com/open-edx/edx-platform/language/ja_JP/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,332 +47,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -382,43 +382,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -480,150 +480,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -793,41 +803,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -835,39 +845,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -905,84 +916,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -999,7 +1010,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1008,44 +1019,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1111,6 +1122,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1143,23 +1168,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1170,35 +1195,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1248,7 +1273,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1257,14 +1282,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1295,7 +1336,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1377,11 +1418,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1426,7 +1467,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1481,7 +1522,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1817,7 +1858,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1830,38 +1871,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1873,11 +1914,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1888,25 +1929,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2023,89 +2064,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2115,11 +2165,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ja_JP/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ja_JP/LC_MESSAGES/djangojs.mo index 993999eb96f..63cfbfce9e4 100644 Binary files a/ecommerce/conf/locale/ja_JP/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ja_JP/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ja_JP/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ja_JP/LC_MESSAGES/djangojs.po index 52d58c35bc7..6edee3dbdc3 100644 --- a/ecommerce/conf/locale/ja_JP/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ja_JP/LC_MESSAGES/djangojs.po @@ -16,10 +16,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Kyoto University , 2017\n" -"Language-Team: Japanese (Japan) (http://www.transifex.com/open-edx/edx-platform/language/ja_JP/)\n" +"Language-Team: Japanese (Japan) (http://app.transifex.com/open-edx/edx-platform/language/ja_JP/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -318,11 +318,11 @@ msgstr "受講登録コード" msgid "Discount Code" msgstr "割引コード" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "変更を保存" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "クーポンを作成" @@ -464,7 +464,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ka/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ka/LC_MESSAGES/django.mo index 7ddd6c43483..f589037cdd0 100644 Binary files a/ecommerce/conf/locale/ka/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ka/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ka/LC_MESSAGES/django.po b/ecommerce/conf/locale/ka/LC_MESSAGES/django.po index 807ab86ba0d..cdeede75258 100644 --- a/ecommerce/conf/locale/ka/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ka/LC_MESSAGES/django.po @@ -17,10 +17,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Anthony Mangano , 2017\n" -"Language-Team: Georgian (http://www.transifex.com/open-edx/edx-platform/language/ka/)\n" +"Language-Team: Georgian (http://app.transifex.com/open-edx/edx-platform/language/ka/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,332 +49,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "LMS-ბაზის url მორგებული გვერდისთვის/მიკროგვერდისთვის" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "საბაზო URL ამ გვერდის LMS-თვის (მაგ.: https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "მორგებული გვერდის თემის მისამართი" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "გადახდის პროცესორები." -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "მძიმით გამოყოფილი პროცესორის სახელების ჩამონათვალი: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "კლიენტის მხარის გადახდის პროცესორი. " -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "პროცესორი, რომელიც გამოიყენება გადახდებისთვის კლიენტის მხრიდან " -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "OAuth პარამეტრები" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "JSON სტრიქონი, რომელიც შეიცავს OAuth უკანა მხარის პარამეტრებს." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "სეგმენტის გასაღები" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "სეგმენტში ჩასაწერი/API გასაღები." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "ელფოსტიდან" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "მისამართი საიდანაც იგზავნება შეტყობინებები." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "ჩარიცხვის კოდის ჩართვა" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "ჩარიცხვის კოდების შექმნის ჩართვა." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "გადახდის მხარდაჭერის შეტყობინება" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "საკონტაქტო მისამართი გადახდის მხარდაჭერის საკითხებზე. " -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "გადახდის მხარდაჭერის url" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "გადახდის მხარდაჭერის საკითხების URL." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "ქუქი ჩანაწერის UTM სახელი" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "ქუქი ჩანაწერის შენახვის UTM მონაცემების სახელი" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "დაკავშირებული ქუქი ჩანაწერის სახელი" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "ქუქი ჩანაწერის შენახვასთან დაკავშირებული მონაცემების სახელი." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "სრული სახელი" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "სახელი" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "ამ კუპონის კოდი ჯერ არ არის მოქმედი" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "ამ კუპონის კოდს ვადა გაუვიდა" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "პროდუქტის [{product}] შეძენა არ არის ხელმისაწვდომი." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "ამ კუპონის კოდი აღარ არის ხელმისაწვდომი." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "ამ კუპონის კოდი არასწორია." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "ვაუჩერი თქვენს არსებულ კალათას არ შეესაბამება." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "კოდი არ არის წარმოდგენილი." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU არ არის წარმოდგენილი." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "პროდუქტი არ არსებობს." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "თქვენ არ გაქვთ ამ კუპონის გამოყენების უფლება." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "გვერდი" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "ბოლო თარიღი/დრო როდესაც შეგიძლიათ ამ პროდუქტის დამოწმების გაგზავნა." @@ -384,43 +384,43 @@ msgstr "ბოლო თარიღი/დრო როდესაც შე msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "{course_id} -ის კომერციულ მონაცემთა გამოქვეყნება ვერ მოხერხდა LMS-ზე." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "აუდიტი" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "კრედიტი" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "წარჩინებით" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "პროფესიული" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "დამოწმებული" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -482,150 +482,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -795,41 +805,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "არააქტიური" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "აქტიური" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "პროდუქტებს უნდა ჰქონდეთ ფასი." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "პროდუქტებმა უნდა მიუთითონ მოთხოვნილია თუ არა ID-ს დამოწმება." -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "მოთხოვნილია არასწორი პროდუქტის კლასი [{product_class}]." -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -837,39 +847,40 @@ msgid "" " been saved." msgstr "[{course_id}] კურსი არ გამოქვეყნდა LMS-ზე, რადგან გადამრთველი [publish_course_modes_to_lms] გამორთულია. არარსებული SKU-ს თავიდან აცილების მიზნით, მონაცემები არ არის შენახული." -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "ჩარიცხვის კოდი." -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "ფასდაკლების კოდი" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -907,84 +918,84 @@ msgstr "ატრიბუტის ტიპი" msgid "Text Attribute" msgstr "ტექსტიs ატრიბუტი" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "თქვენთვის ჩარიცხვის შესაძენად აქ დააწკაპუნეთ" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "ამ კურსზე მრავალი ადგილის შესაძენად დააწკაპუნეთ აქ" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "კუპონის კოდის '{code}' ვადა ამოიწურა." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "კუპონის კოდი '{code}' დაემატა კალათას." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1001,7 +1012,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1010,44 +1021,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "თქვენ უკვე დაამატეთ კუპონის კოდი '{code}' თქვენს კალათას." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "კუპონის კოდი '{code}' არ არსებობს." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "ბოლო თარიღი/დრო როდესაც შესაძლებელია ამ პროდუქტის შეძენა." @@ -1113,6 +1124,20 @@ msgstr "სტატუსი" msgid "Failed to retrieve enrollment data." msgstr "ვერ მოხერხდა ჩარიცხვის მონაცემების მოძიება." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1145,23 +1170,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1172,35 +1197,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1250,7 +1275,7 @@ msgstr "დააწკაპუნეთ \"შენახვა და შე msgid "Partner" msgstr "პარტნიორი" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "პარტნიორები" @@ -1259,14 +1284,30 @@ msgid "American Express" msgstr "American Express " #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Discover" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1297,7 +1338,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "თქვენი კალათის მოძიებასთან დაკვშირებით იყო პრობლემა. გთხოვთ განაახლოთ გვერდი და კიდევ სცადოთ." @@ -1379,11 +1420,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1428,7 +1469,7 @@ msgid "Line Credit (excl. tax)" msgstr "საკრედიტო სტრიქონი (გადასახადის გამოკლებით)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1483,7 +1524,7 @@ msgstr "გამოყენებული" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1819,7 +1860,7 @@ msgstr "UTM შინაარსი" msgid "UTM Created At" msgstr "UTM შექმნილია აქ" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1832,38 +1873,38 @@ msgstr "UTM შექმნილია აქ" msgid "Dashboard" msgstr "მართვის დაფა" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "კატალოგი" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "პროდუქტები" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "პროდუქტის ტიპები" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "კატეგორიები" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "რიგები" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "გაფრთხილება მცირე მარაგზე" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "შესრულება" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1875,11 +1916,11 @@ msgstr "შესრულება" msgid "Orders" msgstr "შეკვეთები" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "სტატისტიკა" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1890,25 +1931,25 @@ msgstr "სტატისტიკა" msgid "Refunds" msgstr "თანხის დაბრუნება" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "მომხმარებლები" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "მოთხოვნები მარაგის გაფრთხილებაზე " -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "შეთავაზებები" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "ვაუჩერები" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "მოხსენებები" @@ -2025,89 +2066,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "ერთეულის ფასი" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "რაოდენობა:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2117,11 +2167,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ka/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ka/LC_MESSAGES/djangojs.mo index 2b0d09ea1a7..8839768c7fe 100644 Binary files a/ecommerce/conf/locale/ka/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ka/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ka/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ka/LC_MESSAGES/djangojs.po index 28fec64c1cb..fa36c84b2bf 100644 --- a/ecommerce/conf/locale/ka/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ka/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Giorgi Goderdzishvili , 2016\n" -"Language-Team: Georgian (http://www.transifex.com/open-edx/edx-platform/language/ka/)\n" +"Language-Team: Georgian (http://app.transifex.com/open-edx/edx-platform/language/ka/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "ჩარიცხვის კოდი" msgid "Discount Code" msgstr "ფასდაკლების კოდი" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "ცვლილებების დამახსოვრება" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "კუპონის შექმნა" @@ -462,7 +462,7 @@ msgstr "ადგილის ტიპი" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/kab/LC_MESSAGES/django.mo b/ecommerce/conf/locale/kab/LC_MESSAGES/django.mo index e4d5e861194..7abb584c709 100644 Binary files a/ecommerce/conf/locale/kab/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/kab/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/kab/LC_MESSAGES/django.po b/ecommerce/conf/locale/kab/LC_MESSAGES/django.po index 13b66876c5c..70960b67abf 100644 --- a/ecommerce/conf/locale/kab/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/kab/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Kabyle (http://www.transifex.com/open-edx/edx-platform/language/kab/)\n" +"Language-Team: Kabyle (http://app.transifex.com/open-edx/edx-platform/language/kab/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/kab/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/kab/LC_MESSAGES/djangojs.mo index cb132f209b7..caf1bd213a2 100644 Binary files a/ecommerce/conf/locale/kab/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/kab/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/kab/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/kab/LC_MESSAGES/djangojs.po index 136b9e26121..31f495ce80c 100644 --- a/ecommerce/conf/locale/kab/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/kab/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Kabyle (http://www.transifex.com/open-edx/edx-platform/language/kab/)\n" +"Language-Team: Kabyle (http://app.transifex.com/open-edx/edx-platform/language/kab/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/kk/LC_MESSAGES/django.mo b/ecommerce/conf/locale/kk/LC_MESSAGES/django.mo index 62830f5cdf5..0eb1f61c3d4 100644 Binary files a/ecommerce/conf/locale/kk/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/kk/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/kk/LC_MESSAGES/django.po b/ecommerce/conf/locale/kk/LC_MESSAGES/django.po index ab95fb18ba7..4cb317abf5f 100644 --- a/ecommerce/conf/locale/kk/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/kk/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Aitzhan Anarbay , 2021\n" -"Language-Team: Kazakh (http://www.transifex.com/open-edx/edx-platform/language/kk/)\n" +"Language-Team: Kazakh (http://app.transifex.com/open-edx/edx-platform/language/kk/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/kk/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/kk/LC_MESSAGES/djangojs.mo index b8d202b2858..9731c5ab93a 100644 Binary files a/ecommerce/conf/locale/kk/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/kk/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/kk/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/kk/LC_MESSAGES/djangojs.po index 73215fd54fb..166e7fa815b 100644 --- a/ecommerce/conf/locale/kk/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/kk/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Kazakh (http://www.transifex.com/open-edx/edx-platform/language/kk/)\n" +"Language-Team: Kazakh (http://app.transifex.com/open-edx/edx-platform/language/kk/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/django.mo b/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/django.mo index 5de631d1eed..3b6a1bcb6dc 100644 Binary files a/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/django.po b/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/django.po index 0d6be8ae4dd..f4a5c30be5b 100644 --- a/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Kazakh (Cyrillic) (http://www.transifex.com/open-edx/edx-platform/language/kk@Cyrl/)\n" +"Language-Team: Kazakh (Cyrillic) (http://app.transifex.com/open-edx/edx-platform/language/kk@Cyrl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/djangojs.mo index 5f4865970ae..d63d93ffc2b 100644 Binary files a/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/djangojs.po index dd48120cd27..9d4cff5b07f 100644 --- a/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/kk@Cyrl/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Kazakh (Cyrillic) (http://www.transifex.com/open-edx/edx-platform/language/kk@Cyrl/)\n" +"Language-Team: Kazakh (Cyrillic) (http://app.transifex.com/open-edx/edx-platform/language/kk@Cyrl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/django.mo b/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/django.mo index 9834ea77381..4ac6db5ac84 100644 Binary files a/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/django.po b/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/django.po index 8f39e09fe60..5fba5facc34 100644 --- a/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Перизат Мендыханқызы , 2016\n" -"Language-Team: Kazakh (Kazakhstan) (http://www.transifex.com/open-edx/edx-platform/language/kk_KZ/)\n" +"Language-Team: Kazakh (Kazakhstan) (http://app.transifex.com/open-edx/edx-platform/language/kk_KZ/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/djangojs.mo index 41c90143504..58d6ca59052 100644 Binary files a/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/djangojs.po index 1ae859f3f99..ea975d4840f 100644 --- a/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/kk_KZ/LC_MESSAGES/djangojs.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Sara Kopbulsynova , 2016\n" -"Language-Team: Kazakh (Kazakhstan) (http://www.transifex.com/open-edx/edx-platform/language/kk_KZ/)\n" +"Language-Team: Kazakh (Kazakhstan) (http://app.transifex.com/open-edx/edx-platform/language/kk_KZ/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,11 +317,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -463,7 +463,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/km/LC_MESSAGES/django.mo b/ecommerce/conf/locale/km/LC_MESSAGES/django.mo index 9a55f0464ec..e9cf6bd4c1c 100644 Binary files a/ecommerce/conf/locale/km/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/km/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/km/LC_MESSAGES/django.po b/ecommerce/conf/locale/km/LC_MESSAGES/django.po index e5c22d0dc46..f8e0083f460 100644 --- a/ecommerce/conf/locale/km/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/km/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Khmer (http://www.transifex.com/open-edx/edx-platform/language/km/)\n" +"Language-Team: Khmer (http://app.transifex.com/open-edx/edx-platform/language/km/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/km/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/km/LC_MESSAGES/djangojs.mo index 26542394340..eea628899ff 100644 Binary files a/ecommerce/conf/locale/km/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/km/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/km/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/km/LC_MESSAGES/djangojs.po index 3641b3782e3..3fd6c620d60 100644 --- a/ecommerce/conf/locale/km/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/km/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Khmer (http://www.transifex.com/open-edx/edx-platform/language/km/)\n" +"Language-Team: Khmer (http://app.transifex.com/open-edx/edx-platform/language/km/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/km_KH/LC_MESSAGES/django.mo b/ecommerce/conf/locale/km_KH/LC_MESSAGES/django.mo index fb8dc70ef09..6fab421d4f5 100644 Binary files a/ecommerce/conf/locale/km_KH/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/km_KH/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/km_KH/LC_MESSAGES/django.po b/ecommerce/conf/locale/km_KH/LC_MESSAGES/django.po index 2aa2ff3b8b0..027c6b4d348 100644 --- a/ecommerce/conf/locale/km_KH/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/km_KH/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Khmer (Cambodia) (http://www.transifex.com/open-edx/edx-platform/language/km_KH/)\n" +"Language-Team: Khmer (Cambodia) (http://app.transifex.com/open-edx/edx-platform/language/km_KH/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/km_KH/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/km_KH/LC_MESSAGES/djangojs.mo index a6f441bb514..b5f10182cb4 100644 Binary files a/ecommerce/conf/locale/km_KH/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/km_KH/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/km_KH/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/km_KH/LC_MESSAGES/djangojs.po index 75b5962444c..5c554f5eb36 100644 --- a/ecommerce/conf/locale/km_KH/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/km_KH/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Khmer (Cambodia) (http://www.transifex.com/open-edx/edx-platform/language/km_KH/)\n" +"Language-Team: Khmer (Cambodia) (http://app.transifex.com/open-edx/edx-platform/language/km_KH/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/kn/LC_MESSAGES/django.mo b/ecommerce/conf/locale/kn/LC_MESSAGES/django.mo index ac608d5925a..a4f2840334f 100644 Binary files a/ecommerce/conf/locale/kn/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/kn/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/kn/LC_MESSAGES/django.po b/ecommerce/conf/locale/kn/LC_MESSAGES/django.po index f45c310f17e..bfdfcea9658 100644 --- a/ecommerce/conf/locale/kn/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/kn/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Kannada (http://www.transifex.com/open-edx/edx-platform/language/kn/)\n" +"Language-Team: Kannada (http://app.transifex.com/open-edx/edx-platform/language/kn/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/kn/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/kn/LC_MESSAGES/djangojs.mo index d15dc693b17..573f02fef62 100644 Binary files a/ecommerce/conf/locale/kn/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/kn/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/kn/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/kn/LC_MESSAGES/djangojs.po index 4d661adc281..1a697febb40 100644 --- a/ecommerce/conf/locale/kn/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/kn/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Kannada (http://www.transifex.com/open-edx/edx-platform/language/kn/)\n" +"Language-Team: Kannada (http://app.transifex.com/open-edx/edx-platform/language/kn/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ko/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ko/LC_MESSAGES/django.mo index 0d388acabd2..933ee738a0e 100644 Binary files a/ecommerce/conf/locale/ko/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ko/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ko/LC_MESSAGES/django.po b/ecommerce/conf/locale/ko/LC_MESSAGES/django.po index 3b07724edad..d7cea088e03 100644 --- a/ecommerce/conf/locale/ko/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ko/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Korean (http://www.transifex.com/open-edx/edx-platform/language/ko/)\n" +"Language-Team: Korean (http://app.transifex.com/open-edx/edx-platform/language/ko/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ko/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ko/LC_MESSAGES/djangojs.mo index d48eaf83376..04b1e6ac730 100644 Binary files a/ecommerce/conf/locale/ko/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ko/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ko/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ko/LC_MESSAGES/djangojs.po index f48bdfebbcf..edb0aa36735 100644 --- a/ecommerce/conf/locale/ko/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ko/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Korean (http://www.transifex.com/open-edx/edx-platform/language/ko/)\n" +"Language-Team: Korean (http://app.transifex.com/open-edx/edx-platform/language/ko/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ko_KR/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ko_KR/LC_MESSAGES/django.mo index efabc9073ba..14a1918c0d2 100644 Binary files a/ecommerce/conf/locale/ko_KR/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ko_KR/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ko_KR/LC_MESSAGES/django.po b/ecommerce/conf/locale/ko_KR/LC_MESSAGES/django.po index 9813c2d2d52..3dbdc309e59 100644 --- a/ecommerce/conf/locale/ko_KR/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ko_KR/LC_MESSAGES/django.po @@ -19,10 +19,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: WooJin Kim, 2021\n" -"Language-Team: Korean (Korea) (http://www.transifex.com/open-edx/edx-platform/language/ko_KR/)\n" +"Language-Team: Korean (Korea) (http://app.transifex.com/open-edx/edx-platform/language/ko_KR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -51,332 +51,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -386,43 +386,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -484,150 +484,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -797,41 +807,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -839,39 +849,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -909,84 +920,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1003,7 +1014,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1012,44 +1023,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1115,6 +1126,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1147,23 +1172,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1174,35 +1199,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1252,7 +1277,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1261,14 +1286,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1299,7 +1340,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1381,11 +1422,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1430,7 +1471,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1485,7 +1526,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1821,7 +1862,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1834,38 +1875,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1877,11 +1918,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1892,25 +1933,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2027,89 +2068,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2119,11 +2169,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ko_KR/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ko_KR/LC_MESSAGES/djangojs.mo index 03926a60b9a..7c4a0e0d52e 100644 Binary files a/ecommerce/conf/locale/ko_KR/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ko_KR/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ko_KR/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ko_KR/LC_MESSAGES/djangojs.po index 7af164d3b4a..5f99b8e1695 100644 --- a/ecommerce/conf/locale/ko_KR/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ko_KR/LC_MESSAGES/djangojs.po @@ -19,10 +19,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: WooJin Kim, 2021\n" -"Language-Team: Korean (Korea) (http://www.transifex.com/open-edx/edx-platform/language/ko_KR/)\n" +"Language-Team: Korean (Korea) (http://app.transifex.com/open-edx/edx-platform/language/ko_KR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -321,11 +321,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -467,7 +467,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/lg/LC_MESSAGES/django.mo b/ecommerce/conf/locale/lg/LC_MESSAGES/django.mo index 5795737d9b5..125723f4c8e 100644 Binary files a/ecommerce/conf/locale/lg/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/lg/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/lg/LC_MESSAGES/django.po b/ecommerce/conf/locale/lg/LC_MESSAGES/django.po index c21c233bfe6..d38623d217b 100644 --- a/ecommerce/conf/locale/lg/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/lg/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Luganda (http://www.transifex.com/open-edx/edx-platform/language/lg/)\n" +"Language-Team: Luganda (http://app.transifex.com/open-edx/edx-platform/language/lg/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/lg/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/lg/LC_MESSAGES/djangojs.mo index 9a6b6111010..a8f84545030 100644 Binary files a/ecommerce/conf/locale/lg/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/lg/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/lg/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/lg/LC_MESSAGES/djangojs.po index 37d787f349a..463e38464b4 100644 --- a/ecommerce/conf/locale/lg/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/lg/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Luganda (http://www.transifex.com/open-edx/edx-platform/language/lg/)\n" +"Language-Team: Luganda (http://app.transifex.com/open-edx/edx-platform/language/lg/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/lt_LT/LC_MESSAGES/django.mo b/ecommerce/conf/locale/lt_LT/LC_MESSAGES/django.mo index b13a0ff91e2..c87d82fbd86 100644 Binary files a/ecommerce/conf/locale/lt_LT/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/lt_LT/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/lt_LT/LC_MESSAGES/django.po b/ecommerce/conf/locale/lt_LT/LC_MESSAGES/django.po index 64c23c1f38b..0d43ca83f66 100644 --- a/ecommerce/conf/locale/lt_LT/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/lt_LT/LC_MESSAGES/django.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Marius , 2016\n" -"Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/open-edx/edx-platform/language/lt_LT/)\n" +"Language-Team: Lithuanian (Lithuania) (http://app.transifex.com/open-edx/edx-platform/language/lt_LT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,332 +47,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Vardas Pavardė" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -382,43 +382,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -480,150 +480,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -793,41 +803,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -835,39 +845,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -905,84 +916,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -999,7 +1010,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1008,44 +1019,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1111,6 +1122,20 @@ msgstr "Statusas" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1143,23 +1168,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1170,35 +1195,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1248,7 +1273,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1257,14 +1282,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1295,7 +1336,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1377,11 +1418,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1426,7 +1467,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1481,7 +1522,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1817,7 +1858,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1830,38 +1871,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1873,11 +1914,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1888,25 +1929,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Ataskaitos" @@ -2023,89 +2064,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2115,11 +2165,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/lt_LT/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/lt_LT/LC_MESSAGES/djangojs.mo index 028e3dd1b17..ee0abbb7911 100644 Binary files a/ecommerce/conf/locale/lt_LT/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/lt_LT/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/lt_LT/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/lt_LT/LC_MESSAGES/djangojs.po index fb760c47733..801117ec66f 100644 --- a/ecommerce/conf/locale/lt_LT/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/lt_LT/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Edukometrija , 2015\n" -"Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/open-edx/edx-platform/language/lt_LT/)\n" +"Language-Team: Lithuanian (Lithuania) (http://app.transifex.com/open-edx/edx-platform/language/lt_LT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/lv/LC_MESSAGES/django.mo b/ecommerce/conf/locale/lv/LC_MESSAGES/django.mo index 9897aef4f2d..fb3bd40f3a0 100644 Binary files a/ecommerce/conf/locale/lv/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/lv/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/lv/LC_MESSAGES/django.po b/ecommerce/conf/locale/lv/LC_MESSAGES/django.po index 0cef297bc7f..ac1676444af 100644 --- a/ecommerce/conf/locale/lv/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/lv/LC_MESSAGES/django.po @@ -9,15 +9,15 @@ # Translators: # Translators: # Translators: -# Biku And , 2021 +# Andrejs B. , 2021 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Biku And , 2021\n" -"Language-Team: Latvian (http://www.transifex.com/open-edx/edx-platform/language/lv/)\n" +"Last-Translator: Andrejs B. , 2021\n" +"Language-Team: Latvian (http://app.transifex.com/open-edx/edx-platform/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Pilns vārds" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Vārds" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Audita" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Gods" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Profesionālais" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Verificēts" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Sākuma datums" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "Statuss" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "Informācijas panelis" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Atskaites" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Apraksts" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Kopā" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/lv/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/lv/LC_MESSAGES/djangojs.mo index 61ad2df3a40..6ed25127fce 100644 Binary files a/ecommerce/conf/locale/lv/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/lv/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/lv/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/lv/LC_MESSAGES/djangojs.po index 97f8654d825..48c8fdb9c88 100644 --- a/ecommerce/conf/locale/lv/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/lv/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Latvian (http://www.transifex.com/open-edx/edx-platform/language/lv/)\n" +"Language-Team: Latvian (http://app.transifex.com/open-edx/edx-platform/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "Reģistrācijas kods" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ml/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ml/LC_MESSAGES/django.mo index 724ad632b09..3867361f23a 100644 Binary files a/ecommerce/conf/locale/ml/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ml/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ml/LC_MESSAGES/django.po b/ecommerce/conf/locale/ml/LC_MESSAGES/django.po index 3d45859785c..f2d2ad3040e 100644 --- a/ecommerce/conf/locale/ml/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ml/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Malayalam (http://www.transifex.com/open-edx/edx-platform/language/ml/)\n" +"Language-Team: Malayalam (http://app.transifex.com/open-edx/edx-platform/language/ml/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ml/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ml/LC_MESSAGES/djangojs.mo index f0a3bcdb16a..523034d410b 100644 Binary files a/ecommerce/conf/locale/ml/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ml/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ml/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ml/LC_MESSAGES/djangojs.po index 0b9475cd7e1..be9c16aad20 100644 --- a/ecommerce/conf/locale/ml/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ml/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Malayalam (http://www.transifex.com/open-edx/edx-platform/language/ml/)\n" +"Language-Team: Malayalam (http://app.transifex.com/open-edx/edx-platform/language/ml/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/mn/LC_MESSAGES/django.mo b/ecommerce/conf/locale/mn/LC_MESSAGES/django.mo index 71192c342c5..73bdc36a858 100644 Binary files a/ecommerce/conf/locale/mn/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/mn/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/mn/LC_MESSAGES/django.po b/ecommerce/conf/locale/mn/LC_MESSAGES/django.po index a323ba79631..85737299fb4 100644 --- a/ecommerce/conf/locale/mn/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/mn/LC_MESSAGES/django.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Myagmarjav Enkhbileg , 2018\n" -"Language-Team: Mongolian (http://www.transifex.com/open-edx/edx-platform/language/mn/)\n" +"Language-Team: Mongolian (http://app.transifex.com/open-edx/edx-platform/language/mn/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,332 +47,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -382,43 +382,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -480,150 +480,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -793,41 +803,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -835,39 +845,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -905,84 +916,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -999,7 +1010,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1008,44 +1019,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1111,6 +1122,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1143,23 +1168,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1170,35 +1195,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1248,7 +1273,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1257,14 +1282,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1295,7 +1336,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1377,11 +1418,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1426,7 +1467,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1481,7 +1522,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1817,7 +1858,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1830,38 +1871,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1873,11 +1914,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1888,25 +1929,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2023,89 +2064,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2115,11 +2165,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/mn/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/mn/LC_MESSAGES/djangojs.mo index d1856c354d5..cb4b7b13b39 100644 Binary files a/ecommerce/conf/locale/mn/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/mn/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/mn/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/mn/LC_MESSAGES/djangojs.po index 11940f6ce41..c193f92ca16 100644 --- a/ecommerce/conf/locale/mn/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/mn/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Myagmarjav Enkhbileg , 2018\n" -"Language-Team: Mongolian (http://www.transifex.com/open-edx/edx-platform/language/mn/)\n" +"Language-Team: Mongolian (http://app.transifex.com/open-edx/edx-platform/language/mn/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/mn_MN/LC_MESSAGES/django.mo b/ecommerce/conf/locale/mn_MN/LC_MESSAGES/django.mo index 1191023831a..a90741190f4 100644 Binary files a/ecommerce/conf/locale/mn_MN/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/mn_MN/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/mn_MN/LC_MESSAGES/django.po b/ecommerce/conf/locale/mn_MN/LC_MESSAGES/django.po index 206bd6ba329..9dd7c0d6be5 100644 --- a/ecommerce/conf/locale/mn_MN/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/mn_MN/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Mongolian (Mongolia) (http://www.transifex.com/open-edx/edx-platform/language/mn_MN/)\n" +"Language-Team: Mongolian (Mongolia) (http://app.transifex.com/open-edx/edx-platform/language/mn_MN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/mn_MN/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/mn_MN/LC_MESSAGES/djangojs.mo index f3b30c4bed0..29141496183 100644 Binary files a/ecommerce/conf/locale/mn_MN/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/mn_MN/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/mn_MN/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/mn_MN/LC_MESSAGES/djangojs.po index a2238643d78..3eeb8985c57 100644 --- a/ecommerce/conf/locale/mn_MN/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/mn_MN/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Mongolian (Mongolia) (http://www.transifex.com/open-edx/edx-platform/language/mn_MN/)\n" +"Language-Team: Mongolian (Mongolia) (http://app.transifex.com/open-edx/edx-platform/language/mn_MN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/mr/LC_MESSAGES/django.mo b/ecommerce/conf/locale/mr/LC_MESSAGES/django.mo index e70d6c8ef4a..8c191304d22 100644 Binary files a/ecommerce/conf/locale/mr/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/mr/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/mr/LC_MESSAGES/django.po b/ecommerce/conf/locale/mr/LC_MESSAGES/django.po index 3213e6cfe09..458bd325f39 100644 --- a/ecommerce/conf/locale/mr/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/mr/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Marathi (http://www.transifex.com/open-edx/edx-platform/language/mr/)\n" +"Language-Team: Marathi (http://app.transifex.com/open-edx/edx-platform/language/mr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/mr/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/mr/LC_MESSAGES/djangojs.mo index b87352105ed..1b5e61eca5b 100644 Binary files a/ecommerce/conf/locale/mr/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/mr/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/mr/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/mr/LC_MESSAGES/djangojs.po index a536be5d715..f0f43055114 100644 --- a/ecommerce/conf/locale/mr/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/mr/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Marathi (http://www.transifex.com/open-edx/edx-platform/language/mr/)\n" +"Language-Team: Marathi (http://app.transifex.com/open-edx/edx-platform/language/mr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ms/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ms/LC_MESSAGES/django.mo index 70c90525181..6e41bb5800c 100644 Binary files a/ecommerce/conf/locale/ms/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ms/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ms/LC_MESSAGES/django.po b/ecommerce/conf/locale/ms/LC_MESSAGES/django.po index e2295a1ce2c..c3f0c6a5dbc 100644 --- a/ecommerce/conf/locale/ms/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ms/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Iznan Hasbullah , 2018\n" -"Language-Team: Malay (http://www.transifex.com/open-edx/edx-platform/language/ms/)\n" +"Language-Team: Malay (http://app.transifex.com/open-edx/edx-platform/language/ms/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ms/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ms/LC_MESSAGES/djangojs.mo index be32664b39f..1d91e8610c4 100644 Binary files a/ecommerce/conf/locale/ms/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ms/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ms/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ms/LC_MESSAGES/djangojs.po index 6da65362b9e..6049fdaf351 100644 --- a/ecommerce/conf/locale/ms/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ms/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Malay (http://www.transifex.com/open-edx/edx-platform/language/ms/)\n" +"Language-Team: Malay (http://app.transifex.com/open-edx/edx-platform/language/ms/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ms_MY/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ms_MY/LC_MESSAGES/django.mo index 89542537592..180d0962e84 100644 Binary files a/ecommerce/conf/locale/ms_MY/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ms_MY/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ms_MY/LC_MESSAGES/django.po b/ecommerce/conf/locale/ms_MY/LC_MESSAGES/django.po index 1424a081161..4f7ba75e6b5 100644 --- a/ecommerce/conf/locale/ms_MY/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ms_MY/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Malay (Malaysia) (http://www.transifex.com/open-edx/edx-platform/language/ms_MY/)\n" +"Language-Team: Malay (Malaysia) (http://app.transifex.com/open-edx/edx-platform/language/ms_MY/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ms_MY/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ms_MY/LC_MESSAGES/djangojs.mo index 7c528986276..46a74057d02 100644 Binary files a/ecommerce/conf/locale/ms_MY/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ms_MY/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ms_MY/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ms_MY/LC_MESSAGES/djangojs.po index 1e40557f88d..c77ec1a0f28 100644 --- a/ecommerce/conf/locale/ms_MY/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ms_MY/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Malay (Malaysia) (http://www.transifex.com/open-edx/edx-platform/language/ms_MY/)\n" +"Language-Team: Malay (Malaysia) (http://app.transifex.com/open-edx/edx-platform/language/ms_MY/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/my/LC_MESSAGES/django.mo b/ecommerce/conf/locale/my/LC_MESSAGES/django.mo index a5e0a533a9c..757186ccab8 100644 Binary files a/ecommerce/conf/locale/my/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/my/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/my/LC_MESSAGES/django.po b/ecommerce/conf/locale/my/LC_MESSAGES/django.po index 6f08ea50005..9b0089f9328 100644 --- a/ecommerce/conf/locale/my/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/my/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Burmese (http://www.transifex.com/open-edx/edx-platform/language/my/)\n" +"Language-Team: Burmese (http://app.transifex.com/open-edx/edx-platform/language/my/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/my/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/my/LC_MESSAGES/djangojs.mo index d7f67f67642..d7b23997bd5 100644 Binary files a/ecommerce/conf/locale/my/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/my/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/my/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/my/LC_MESSAGES/djangojs.po index a96e5080792..739b576d2d0 100644 --- a/ecommerce/conf/locale/my/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/my/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Burmese (http://www.transifex.com/open-edx/edx-platform/language/my/)\n" +"Language-Team: Burmese (http://app.transifex.com/open-edx/edx-platform/language/my/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/nb/LC_MESSAGES/django.mo b/ecommerce/conf/locale/nb/LC_MESSAGES/django.mo index db143faac19..5ac1562f536 100644 Binary files a/ecommerce/conf/locale/nb/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/nb/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/nb/LC_MESSAGES/django.po b/ecommerce/conf/locale/nb/LC_MESSAGES/django.po index 294a68c132c..ae73667b405 100644 --- a/ecommerce/conf/locale/nb/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/nb/LC_MESSAGES/django.po @@ -17,10 +17,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Frode Arntsen , 2016-2017\n" -"Language-Team: Norwegian Bokmål (http://www.transifex.com/open-edx/edx-platform/language/nb/)\n" +"Language-Team: Norwegian Bokmål (http://app.transifex.com/open-edx/edx-platform/language/nb/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,332 +49,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Betalingsformidler" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "Kommaseparert liste over navn på betalingsformidlere: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "Betalingsformidler på kunde-side" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "Formidler som vil bli benyttet for betalinger på kundesiden" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "OAuth innstillinger" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "Fra e-post" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "Avsenderadresse for epost." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Slå på påmeldingskoder" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Slå på opprettelse av påmeldingskoder." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "Slå på SDN sjekk" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "SDN lister" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Krev kontoaktivering" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Skriptet lastes på alle sider" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "Discovery API URL" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "Tillat Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Fullt navn" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Navn" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "Kupongen eksisterer ikke." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "Denne kupongkoden er foreløpig ikke gyldig." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "Denne kupongkoden har utløpt." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "Produktet [{product}] er ikke tilgjengelig for kjøp." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "Denne kupongkoden er ikke lenger tilgjengelig." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "Denne kupongkoden er ugyldig" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Velkommen til edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "Kode er ikke angitt." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU ikke angitt." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "Dette produktet eksisterer ikke." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Du har ikke anledning til å benytte denne kupongen" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "Portal" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -384,43 +384,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Følg" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Ære" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Profesjonsrettet" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Bekreftet" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -482,150 +482,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Sluttdato" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -795,41 +805,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "AKTIV" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Produkter må ha en pris." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -837,39 +847,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Påmeldingskode" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Rabattkode" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "Ingen SKUer angitt." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "Produkter med SKU(s) [{skus}] eksisterer ikke." @@ -907,84 +918,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "Klikk her for å kjøpe kursdeltagelse for kun deg selv" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "Klikk her for å kjøpe flere kursdeltagelser i dette kurset" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "Kupongkoden '{code}' har utløpt." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "Kupongkoden '{code}' er ikke aktiv." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1001,7 +1012,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1010,44 +1021,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1113,6 +1124,20 @@ msgstr "Status" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1145,23 +1170,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1172,35 +1197,35 @@ msgstr "" msgid "Program UUID" msgstr "Program UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1250,7 +1275,7 @@ msgstr "" msgid "Partner" msgstr "Partner" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Partnere" @@ -1259,14 +1284,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1297,7 +1338,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1379,11 +1420,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1428,7 +1469,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1483,7 +1524,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1819,7 +1860,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1832,38 +1873,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1875,11 +1916,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1890,25 +1931,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2025,89 +2066,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2117,11 +2167,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/nb/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/nb/LC_MESSAGES/djangojs.mo index 16ccf432437..328f509f082 100644 Binary files a/ecommerce/conf/locale/nb/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/nb/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/nb/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/nb/LC_MESSAGES/djangojs.po index fde108e6383..ca95daf4c3f 100644 --- a/ecommerce/conf/locale/nb/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/nb/LC_MESSAGES/djangojs.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Frode Arntsen , 2016-2017\n" -"Language-Team: Norwegian Bokmål (http://www.transifex.com/open-edx/edx-platform/language/nb/)\n" +"Language-Team: Norwegian Bokmål (http://app.transifex.com/open-edx/edx-platform/language/nb/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,11 +317,11 @@ msgstr "Påmeldingskode" msgid "Discount Code" msgstr "Rabattkode" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Lagre endringer" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Opprett kupong" @@ -463,7 +463,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ne/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ne/LC_MESSAGES/django.mo index 97d6018af30..83408795ee4 100644 Binary files a/ecommerce/conf/locale/ne/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ne/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ne/LC_MESSAGES/django.po b/ecommerce/conf/locale/ne/LC_MESSAGES/django.po index 2dd729379f7..9ad86d27cd5 100644 --- a/ecommerce/conf/locale/ne/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ne/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Nepali (http://www.transifex.com/open-edx/edx-platform/language/ne/)\n" +"Language-Team: Nepali (http://app.transifex.com/open-edx/edx-platform/language/ne/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ne/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ne/LC_MESSAGES/djangojs.mo index 906428433ba..f0fcc071410 100644 Binary files a/ecommerce/conf/locale/ne/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ne/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ne/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ne/LC_MESSAGES/djangojs.po index 26467fc0d15..2f497b3c06f 100644 --- a/ecommerce/conf/locale/ne/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ne/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Nepali (http://www.transifex.com/open-edx/edx-platform/language/ne/)\n" +"Language-Team: Nepali (http://app.transifex.com/open-edx/edx-platform/language/ne/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/nl/LC_MESSAGES/django.mo b/ecommerce/conf/locale/nl/LC_MESSAGES/django.mo index 4df81396df0..8325981c87a 100644 Binary files a/ecommerce/conf/locale/nl/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/nl/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/nl/LC_MESSAGES/django.po b/ecommerce/conf/locale/nl/LC_MESSAGES/django.po index 9c5300c34d4..955dda406d5 100644 --- a/ecommerce/conf/locale/nl/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/nl/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Dutch (http://www.transifex.com/open-edx/edx-platform/language/nl/)\n" +"Language-Team: Dutch (http://app.transifex.com/open-edx/edx-platform/language/nl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/nl/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/nl/LC_MESSAGES/djangojs.mo index 7f5b71af4a1..131c43d7929 100644 Binary files a/ecommerce/conf/locale/nl/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/nl/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/nl/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/nl/LC_MESSAGES/djangojs.po index f4c4d3b44b3..0f58198030b 100644 --- a/ecommerce/conf/locale/nl/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/nl/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Dutch (http://www.transifex.com/open-edx/edx-platform/language/nl/)\n" +"Language-Team: Dutch (http://app.transifex.com/open-edx/edx-platform/language/nl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/nl_NL/LC_MESSAGES/django.mo b/ecommerce/conf/locale/nl_NL/LC_MESSAGES/django.mo index d7112e7e685..2597845b002 100644 Binary files a/ecommerce/conf/locale/nl_NL/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/nl_NL/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/nl_NL/LC_MESSAGES/django.po b/ecommerce/conf/locale/nl_NL/LC_MESSAGES/django.po index d207077c9a3..e10aaa05853 100644 --- a/ecommerce/conf/locale/nl_NL/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/nl_NL/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Quentin Schoemaker , 2021\n" -"Language-Team: Dutch (Netherlands) (http://www.transifex.com/open-edx/edx-platform/language/nl_NL/)\n" +"Language-Team: Dutch (Netherlands) (http://app.transifex.com/open-edx/edx-platform/language/nl_NL/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/nl_NL/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/nl_NL/LC_MESSAGES/djangojs.mo index bfbe2ad48c4..649dbc9ce85 100644 Binary files a/ecommerce/conf/locale/nl_NL/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/nl_NL/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/nl_NL/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/nl_NL/LC_MESSAGES/djangojs.po index 5821c4f07ae..d0bf1ea483b 100644 --- a/ecommerce/conf/locale/nl_NL/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/nl_NL/LC_MESSAGES/djangojs.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Quentin Schoemaker , 2021\n" -"Language-Team: Dutch (Netherlands) (http://www.transifex.com/open-edx/edx-platform/language/nl_NL/)\n" +"Language-Team: Dutch (Netherlands) (http://app.transifex.com/open-edx/edx-platform/language/nl_NL/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,11 +317,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -463,7 +463,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/pa/LC_MESSAGES/django.mo b/ecommerce/conf/locale/pa/LC_MESSAGES/django.mo index cf7e2d4f667..f63a5dff409 100644 Binary files a/ecommerce/conf/locale/pa/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/pa/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/pa/LC_MESSAGES/django.po b/ecommerce/conf/locale/pa/LC_MESSAGES/django.po index 555befc8454..e8c5e63d8e7 100644 --- a/ecommerce/conf/locale/pa/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/pa/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Panjabi (Punjabi) (http://www.transifex.com/open-edx/edx-platform/language/pa/)\n" +"Language-Team: Panjabi (Punjabi) (http://app.transifex.com/open-edx/edx-platform/language/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/pa/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/pa/LC_MESSAGES/djangojs.mo index e0d062b7fd1..c2317ab03af 100644 Binary files a/ecommerce/conf/locale/pa/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/pa/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/pa/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/pa/LC_MESSAGES/djangojs.po index 111593a2a97..c7f9df9ecf0 100644 --- a/ecommerce/conf/locale/pa/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/pa/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Panjabi (Punjabi) (http://www.transifex.com/open-edx/edx-platform/language/pa/)\n" +"Language-Team: Panjabi (Punjabi) (http://app.transifex.com/open-edx/edx-platform/language/pa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/pl/LC_MESSAGES/django.mo b/ecommerce/conf/locale/pl/LC_MESSAGES/django.mo index 739689d1267..ffa4994ae87 100644 Binary files a/ecommerce/conf/locale/pl/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/pl/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/pl/LC_MESSAGES/django.po b/ecommerce/conf/locale/pl/LC_MESSAGES/django.po index b738aeeaedc..7c7be5dfff1 100644 --- a/ecommerce/conf/locale/pl/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/pl/LC_MESSAGES/django.po @@ -26,10 +26,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-09-04 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Marcin Miłek, 2022\n" -"Language-Team: Polish (http://www.transifex.com/open-edx/edx-platform/language/pl/)\n" +"Language-Team: Polish (http://app.transifex.com/open-edx/edx-platform/language/pl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -58,325 +58,325 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "Z wiadomości e-mail" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "lista SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "nazwisko" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Imię i nazwisko" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Nazwa" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "Kupon nie istnieje." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "Produkt [{product}] nie jest dostępny do zakupu" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" #: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 @@ -393,43 +393,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Honor" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Zweryfikowany " -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -491,150 +491,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Data rozpoczęcia" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Data zakończenia." -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -804,41 +814,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:256 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "NIEAKTYWNY" -#: ecommerce/extensions/api/serializers.py:259 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "AKTYWNY" -#: ecommerce/extensions/api/serializers.py:693 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:696 -#: ecommerce/extensions/api/serializers.py:741 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Produkt musi mieć cenę." -#: ecommerce/extensions/api/serializers.py:703 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:737 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:808 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:840 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -846,39 +856,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1510 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1511 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1978 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2033 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2082 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -916,84 +927,84 @@ msgstr "Typ atrybutu" msgid "Text Attribute" msgstr "Tekst atrybutu" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1010,7 +1021,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1019,39 +1030,39 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" @@ -1122,6 +1133,20 @@ msgstr "Status" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1154,23 +1179,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1181,35 +1206,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1259,7 +1284,7 @@ msgstr "" msgid "Partner" msgstr "Partner" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:259 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1268,14 +1293,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1306,7 +1347,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1388,11 +1429,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1437,7 +1478,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1492,7 +1533,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1828,7 +1869,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:216 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1841,38 +1882,38 @@ msgstr "" msgid "Dashboard" msgstr "Pulpit" -#: ecommerce/settings/_oscar.py:221 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Katalog" -#: ecommerce/settings/_oscar.py:225 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Produkty" -#: ecommerce/settings/_oscar.py:229 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Typy produnktów " -#: ecommerce/settings/_oscar.py:233 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Kategorie" -#: ecommerce/settings/_oscar.py:237 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:241 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:247 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:251 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1884,11 +1925,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:255 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:263 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1899,25 +1940,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:269 ecommerce/settings/_oscar.py:273 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:277 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:283 ecommerce/settings/_oscar.py:287 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:291 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:297 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Raporty" @@ -2034,89 +2075,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Opis" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2126,11 +2176,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "Przejdź do pulpitu" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "Znajdź więcej kursów" diff --git a/ecommerce/conf/locale/pl/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/pl/LC_MESSAGES/djangojs.mo index d2e7c05ef0e..5522ace6c84 100644 Binary files a/ecommerce/conf/locale/pl/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/pl/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/pl/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/pl/LC_MESSAGES/djangojs.po index 0c1d5761334..450f6f83cf0 100644 --- a/ecommerce/conf/locale/pl/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/pl/LC_MESSAGES/djangojs.po @@ -20,10 +20,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Aleks Ada, 2022\n" -"Language-Team: Polish (http://www.transifex.com/open-edx/edx-platform/language/pl/)\n" +"Language-Team: Polish (http://app.transifex.com/open-edx/edx-platform/language/pl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -322,11 +322,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Zapisz zmiany" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -468,7 +468,7 @@ msgstr "Typ miejsca" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/pl_PL/LC_MESSAGES/django.mo b/ecommerce/conf/locale/pl_PL/LC_MESSAGES/django.mo index c5b3efba78d..ca41bd5a286 100644 Binary files a/ecommerce/conf/locale/pl_PL/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/pl_PL/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/pl_PL/LC_MESSAGES/django.po b/ecommerce/conf/locale/pl_PL/LC_MESSAGES/django.po index cc7fd435bc7..b1823371230 100644 --- a/ecommerce/conf/locale/pl_PL/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/pl_PL/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Polish (Poland) (http://www.transifex.com/open-edx/edx-platform/language/pl_PL/)\n" +"Language-Team: Polish (Poland) (http://app.transifex.com/open-edx/edx-platform/language/pl_PL/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/pl_PL/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/pl_PL/LC_MESSAGES/djangojs.mo index fa792bc2050..e9f90d82174 100644 Binary files a/ecommerce/conf/locale/pl_PL/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/pl_PL/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/pl_PL/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/pl_PL/LC_MESSAGES/djangojs.po index af2a7b249e6..7f1ade0ef48 100644 --- a/ecommerce/conf/locale/pl_PL/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/pl_PL/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Polish (Poland) (http://www.transifex.com/open-edx/edx-platform/language/pl_PL/)\n" +"Language-Team: Polish (Poland) (http://app.transifex.com/open-edx/edx-platform/language/pl_PL/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ps/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ps/LC_MESSAGES/django.mo index 7995ee20102..582abffc147 100644 Binary files a/ecommerce/conf/locale/ps/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ps/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ps/LC_MESSAGES/django.po b/ecommerce/conf/locale/ps/LC_MESSAGES/django.po index f0afcb31f3c..7184b356309 100644 --- a/ecommerce/conf/locale/ps/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ps/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Pashto (http://www.transifex.com/open-edx/edx-platform/language/ps/)\n" +"Language-Team: Pashto (http://app.transifex.com/open-edx/edx-platform/language/ps/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ps/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ps/LC_MESSAGES/djangojs.mo index dba8a075271..7a132cceb9a 100644 Binary files a/ecommerce/conf/locale/ps/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ps/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ps/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ps/LC_MESSAGES/djangojs.po index 7fc21e099e9..523fe9305cf 100644 --- a/ecommerce/conf/locale/ps/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ps/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Pashto (http://www.transifex.com/open-edx/edx-platform/language/ps/)\n" +"Language-Team: Pashto (http://app.transifex.com/open-edx/edx-platform/language/ps/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/pt/LC_MESSAGES/django.mo b/ecommerce/conf/locale/pt/LC_MESSAGES/django.mo index 5da58b2188a..f2d5fb9f208 100644 Binary files a/ecommerce/conf/locale/pt/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/pt/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/pt/LC_MESSAGES/django.po b/ecommerce/conf/locale/pt/LC_MESSAGES/django.po index f0f20a476d9..d518d87bdc3 100644 --- a/ecommerce/conf/locale/pt/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/pt/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Portuguese (http://www.transifex.com/open-edx/edx-platform/language/pt/)\n" +"Language-Team: Portuguese (http://app.transifex.com/open-edx/edx-platform/language/pt/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/pt/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/pt/LC_MESSAGES/djangojs.mo index 3d03bc7e12c..56c865ba7f9 100644 Binary files a/ecommerce/conf/locale/pt/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/pt/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/pt/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/pt/LC_MESSAGES/djangojs.po index 9d4fd429509..986f694d2d1 100644 --- a/ecommerce/conf/locale/pt/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/pt/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Portuguese (http://www.transifex.com/open-edx/edx-platform/language/pt/)\n" +"Language-Team: Portuguese (http://app.transifex.com/open-edx/edx-platform/language/pt/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/pt_BR/LC_MESSAGES/django.mo b/ecommerce/conf/locale/pt_BR/LC_MESSAGES/django.mo index 87f214ad40a..9ace03f407c 100644 Binary files a/ecommerce/conf/locale/pt_BR/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/pt_BR/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/pt_BR/LC_MESSAGES/django.po b/ecommerce/conf/locale/pt_BR/LC_MESSAGES/django.po index d6fa691b63a..44a2c5f38e7 100644 --- a/ecommerce/conf/locale/pt_BR/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/pt_BR/LC_MESSAGES/django.po @@ -23,7 +23,7 @@ # 808007d4a0e569ece8fbccc32b57c592_b53d1a5, 2021 # Luiz Felipe Capobiango Cerqueira , 2015 # Mariana Jó de Souza , 2015 -# Matheus Gomes Correia, 2017 +# Matheus Gomes, 2017 # Monica Farias , 2015-2016 # Nuno Maltez , 2016 # Paulo Romano , 2017 @@ -37,10 +37,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Andreia Pasqual , 2021\n" -"Language-Team: Portuguese (Brazil) (http://www.transifex.com/open-edx/edx-platform/language/pt_BR/)\n" +"Language-Team: Portuguese (Brazil) (http://app.transifex.com/open-edx/edx-platform/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -69,332 +69,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Nome completo" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Nome" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Bem-vindos ao edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "Última data/hora em que a verificação para este produto foi apresentada." @@ -404,43 +404,43 @@ msgstr "Última data/hora em que a verificação para este produto foi apresenta msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -502,150 +502,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -815,41 +825,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Produtos devem possuir um preço." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "Produtos devem indicar se a verificação de ID é exigida." -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "Classe de produto [{product_class}] requisitada inválida." -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -857,39 +867,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -927,84 +938,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1021,7 +1032,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1030,44 +1041,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "Última data/hora em que este produto pode ser adquirido." @@ -1133,6 +1144,20 @@ msgstr "Status" msgid "Failed to retrieve enrollment data." msgstr "Recuperação dos dados de matrícula falhou." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1165,23 +1190,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1192,35 +1217,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1270,7 +1295,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Parceiros" @@ -1279,14 +1304,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1317,7 +1358,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1399,11 +1440,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1448,7 +1489,7 @@ msgid "Line Credit (excl. tax)" msgstr "Linha de Crédito (exc. taxas)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1503,7 +1544,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1839,7 +1880,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1852,38 +1893,38 @@ msgstr "" msgid "Dashboard" msgstr "Painel" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Catálogo" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Produtos" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Tipo de Produtos " -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Categorias" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Variações" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Alerta de estoque baixo." -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Preenchimento" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1895,11 +1936,11 @@ msgstr "Preenchimento" msgid "Orders" msgstr "Pedidos" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Estatísticas" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1910,25 +1951,25 @@ msgstr "Estatísticas" msgid "Refunds" msgstr "Reembolsos" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Clientes" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Solicitações de alerta de estoque" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Relatórios" @@ -2045,89 +2086,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Quantidade:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2137,11 +2187,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/pt_BR/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/pt_BR/LC_MESSAGES/djangojs.mo index 458f8c160de..4069aa0dd71 100644 Binary files a/ecommerce/conf/locale/pt_BR/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/pt_BR/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/pt_BR/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/pt_BR/LC_MESSAGES/djangojs.po index 806a8d87a26..9324783213b 100644 --- a/ecommerce/conf/locale/pt_BR/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/pt_BR/LC_MESSAGES/djangojs.po @@ -24,10 +24,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Gabriel José, 2021\n" -"Language-Team: Portuguese (Brazil) (http://www.transifex.com/open-edx/edx-platform/language/pt_BR/)\n" +"Language-Team: Portuguese (Brazil) (http://app.transifex.com/open-edx/edx-platform/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -326,11 +326,11 @@ msgstr "Código de Matrícula" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Salvar alterações" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -472,7 +472,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/pt_PT/LC_MESSAGES/django.mo b/ecommerce/conf/locale/pt_PT/LC_MESSAGES/django.mo index ee839606ef6..07d543af853 100644 Binary files a/ecommerce/conf/locale/pt_PT/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/pt_PT/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/pt_PT/LC_MESSAGES/django.po b/ecommerce/conf/locale/pt_PT/LC_MESSAGES/django.po index d246f5811f4..ba5b4a5da79 100644 --- a/ecommerce/conf/locale/pt_PT/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/pt_PT/LC_MESSAGES/django.po @@ -12,6 +12,7 @@ # Beatriz Sousa , 2018 # Cátia Lopes , 2018-2020 # Filipa Macieira , 2021 +# Ivo Branco , 2023 # 8b7f539cfdb680c92813b22b241ff5ad_86793ec, 2016 # Luis Manuel Moreno , 2020 # 425fe09b3064b9f906f637fff94056ae_a00ea56 <0fa3588fa89906bfcb3a354600956e0e_308047>, 2015 @@ -27,10 +28,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-09-04 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Nika Shahidian, 2022\n" -"Language-Team: Portuguese (Portugal) (http://www.transifex.com/open-edx/edx-platform/language/pt_PT/)\n" +"Last-Translator: Ivo Branco , 2023\n" +"Language-Team: Portuguese (Portugal) (http://app.transifex.com/open-edx/edx-platform/language/pt_PT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -59,325 +60,325 @@ msgid "" " Be careful when re-activating this switch!" msgstr "A administração do utilizador foi desativada devido à carga na base de dados. Esta funcionalidade pode ser restaurada ativando a opção Waffle switch {switch_name}. Tenha cuidado ao reativar este switch!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "URL base LMS para site personalizado/microsite" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "URL raiz do LMS deste site (por exemplo, https://courses.Stage.EDX.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "Caminho para o tema do site personalizado" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Processadores de pagamento" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "Lista separada por vírgulas de nomes de processadores: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "Processador de pagamento no lado do cliente" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "Processador que será utilizado para os pagamentos no lado do cliente" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "Configurações de OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "Cadeia de caracteres JSON contendo configurações de backend OAuth." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "Chave de segmento" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Chave do segmento Write/API." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "Do email" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "Endereço a partir do qual os emails são enviados." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Ativar códigos de incrição" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Ative a criação dos códigos de inscrição." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "Email de suporte de pagamento" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "Email de contacto para problemas de suporte de pagamento." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "URL da sustentação do pagamento" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "URL para problemas de suporte de pagamento." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "Nome do Cookie UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "Nome do cookie que armazena dados UTM." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "Nome do Cookie de Afiliado" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "Nome do cookie que armazena os dados da filial." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "Enviar notificação de email de reembolso" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "Ativar verificação de SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "Ativar verificação de SDN ao finalizar compra." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "[Deprecated] URL da API SDN do Tesouro dos EUA" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "[Deprecated] Chave API SDN do Tesouro dos EUA" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "Listas de SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "Uma lista separada por vírgulas de listas do Treasury OFAC para verificar." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Requer Ativação de Conta" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "Exigir que os utilizadores ativem a sua conta antes de permitir que usem um cupão." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "URL de origem do trecho Optimizely" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Este script será carregado em cada página." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "Domínio de Cookie Base" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "Domínio de cookie base usado para partilhar cookies entre os serviços." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "Ativar verificação de bloqueio" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "Ative a verificação de bloqueio na finalização da compra." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "Descobrir URL da API" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "Ativar Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "Ativar Oferta de Programa Parcial" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "Ativar a aplicação de ofertas de programa para os restantes cursos não inscritos ou não verificados" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "Chave Secreta do Portal Hubspot" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "Chave secreta para autenticação do portal Hubspot" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "Activar Microfrontend para a Página do Cesto" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "Utilizar a implementação do microfrontend da página do cesto de compras em vez do modelo do lado do servidor" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "URL do Microfrontend de Pagamento" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "URL para o Microfrontend de Pagamento (utilizado se a opção Permitir Microfrontend de Pagamento para Página do Cesto estiver definida)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "último nome" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" -msgstr "" +msgstr "primeiro nome" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Nome Completo" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "Id do utilizador LMS" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Nome" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "UUID do UtilizadorCorporativo" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "UUID para um UtilizadorCorporativo do Serviço Corporativo." -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "O cupão não existe." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "O código de cupão ainda não é válido." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "O código de cupão expirou." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "O produto [{product}] não está disponível para compra." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "Este código de cupão já não está disponível." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "O código de cupão é inválido." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "O vale de desconto não é aplicável à sua compra atual." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Bem-vindo ao edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "Por favor, faça a sua escolha entre os cursos selecionados pela sua organização e comece a aprender." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "Código não fornecido." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU não fornecido." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "O produto não existe." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Não é elegível para utilizar este cupão." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "Não foi possível encontrar um Utilizador Corporativo correspondente a este cupão." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "Este cupão não é válido para a compra de um programa. Tente utilizá-lo num curso individual do programa. Se precisar de assistência, contacte o apoio edX." -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "Token de consentimento de partilha de dados inválido fornecido." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "Já reservou o seu lugar em {course}." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "Foi aplicado um desconto, cortesia de {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "Este código de cupão não é válido para este curso. Tente um curso diferente." #: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 @@ -394,45 +395,45 @@ msgstr "Última data/hora em que a verificação deste produto pode ser enviada. msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "Falha ao publicar dados de comércio para {course_id} para LMS." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Auditoria" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Crédito" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Honra" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Profissional" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Verificado" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "Educação Executiva" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" -msgstr "" +msgstr "Educação Executiva Paga" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" -msgstr "" +msgstr "Educação Executiva Não Paga" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" -msgstr "" +msgstr "Bootcamp Pago" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" -msgstr "" +msgstr "Bootcamp Não Pago" #: ecommerce/credit/views.py:40 msgid "" @@ -483,161 +484,171 @@ msgid "" "This coupon has been made available through {new_enterprise}. To redeem this" " coupon, you must first logout. When you log back in, please select " "{new_enterprise} as your enterprise and try again." -msgstr "" +msgstr "Este cupão foi disponibilizado através de {new_enterprise}. Para resgatar este cupão, primeiro é necessário fazer logout. Quando voltar a iniciar sessão, selecione {new_enterprise} como a sua empresa e tente novamente." #: ecommerce/enterprise/conditions.py:370 msgid "" "This code is not valid with your email. Please login with the correct email " "assigned to the code or contact your Learning Manager for additional " "questions." -msgstr "" +msgstr "Este código não é válido com o seu email. Por favor, inicie sessão com o email correto atribuído ao código ou contacte o seu Gestor de Aprendizagem para questões adicionais." -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "UUID do Utilizador Corporativo" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "UUID do Catálogo de Utilizador Corporativo" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "Tipo de Desconto" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "Valor do Desconto" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" -msgstr "" +msgstr "Tipo de Desconto de Contrato" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" -msgstr "" +msgstr "Desconto de Contrato" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" -msgstr "" +msgstr "Montante da Fatura Pré-paga" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" +msgstr "ID de oportunidade do Salesforce" + +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "Endereços de e-mail" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" -msgstr "" +msgstr "E-mails separados por vírgulas que receberão os alertas de uso da oferta" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" -msgstr "" +msgstr "Frequência para e-mails de uso da oferta" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." -msgstr "" +msgstr "O número máximo de inscrições que podem resgatar esta oferta." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." -msgstr "" +msgstr "O valor máximo em dólares americanos que pode ser resgatado por esta oferta." -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." -msgstr "" +msgstr "O número máximo de inscrições, por usuário, que podem resgatar esta oferta." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." -msgstr "" +msgstr "O valor máximo em dólares americanos que pode ser resgatado usando esta oferta por um usuário." -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Data Inicial" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Data Final" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" -msgstr "" +msgstr "Limite de Inscrição" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" -msgstr "" +msgstr "Limite de reservas" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" -msgstr "" +msgstr "Limite de inscrição por usuário" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" -msgstr "" +msgstr "Limite de reservas por usuário" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." -msgstr "" +msgstr "Certifique-se de que o novo valor seja maior ou igual ao valor consumido({offer_enrollments})." -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." +msgstr "O ID de oportunidade do Salesforce deve ter 18 caracteres alfanuméricos e começar com 006." + +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." -msgstr "" +msgstr "Certifique-se de que este valor seja maior ou igual a 0." -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." -msgstr "" +msgstr "Certifique-se de que o novo valor deve ser maior ou igual ao valor consumido({consumed_discount:.2f})." -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." -msgstr "" +msgstr "O endereço de e-mail fornecido {email} não é um e-mail válido." -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "Já existe uma oferta para esta combinação Empresa & Catálogo." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "Os descontos percentuais não podem ser superiores a 100%." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "Dever ser definida uma data de início ao especificar uma data de fim." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "A data de início deve ocorrer antes da data de fim." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." -msgstr "" +msgstr "Mais de 2 dígitos após o decimal não são permitidos para valor absoluto." -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." -msgstr "" +msgstr "Este campo é obrigatório quando o tipo de desconto do contrato é absoluto." -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." -msgstr "" +msgstr "Desconto do tipo {} fornecido por {} para {}." #: ecommerce/enterprise/templates/enterprise/enterprise_coupon_app.html:5 msgid "Enterprise Coupon Codes" @@ -705,7 +716,7 @@ msgid "" "\n" " %(platform_name)s Enterprise Offer Administration Tool\n" " " -msgstr "" +msgstr "\n %(platform_name)s Ferramenta de administração de ofertas corporativas\n " #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:26 msgid "Current enterprise offers" @@ -743,7 +754,7 @@ msgid "" "\n" " %(platform_name)s Enterprise Offer Administration Tool\n" " " -msgstr "" +msgstr "\n %(platform_name)s Ferramenta de administração de ofertas corporativas\n " #: ecommerce/enterprise/utils.py:239 #, python-brace-format @@ -803,43 +814,43 @@ msgstr "Um dos produtos que está a tentar encomendar não está disponível." #: ecommerce/extensions/api/exceptions.py:21 msgid "" "We couldn't find enough information about you to perform the calculation." -msgstr "" +msgstr "Não encontramos informações suficientes sobre você para realizar o cálculo." -#: ecommerce/extensions/api/serializers.py:256 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" -msgstr "" +msgstr "EXPIRADO" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "INATIVO" -#: ecommerce/extensions/api/serializers.py:259 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "ATIVO" -#: ecommerce/extensions/api/serializers.py:693 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "Os produtos devem ter um tipo de certificado." -#: ecommerce/extensions/api/serializers.py:696 -#: ecommerce/extensions/api/serializers.py:741 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Os produtos devem ter um preço." -#: ecommerce/extensions/api/serializers.py:703 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "É necessário disponibilizar um UUID de curso para criar Direitos de Curso." -#: ecommerce/extensions/api/serializers.py:737 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "Os produtos devem indicar se a verificação de ID é necessária." -#: ecommerce/extensions/api/serializers.py:808 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "Classe de produto inválida [{product_class}] solicitada." -#: ecommerce/extensions/api/serializers.py:840 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -847,56 +858,57 @@ msgid "" " been saved." msgstr "Curso [{course_id}] não foi publicado no LMS porque a opção [publish_course_modes_to_lms] está desativada. Para evitar SKUs fantasma, os dados não foram guardados." -#: ecommerce/extensions/api/serializers.py:1510 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Código de inscrição" -#: ecommerce/extensions/api/serializers.py:1511 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Código de desconto" -#: ecommerce/extensions/api/serializers.py:1978 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." -msgstr "" +msgstr "Número de pedido inválido ou pedido {} não existe." -#: ecommerce/extensions/api/serializers.py:2033 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" -msgstr "" +msgstr "Falha na atribuição do novo cupom de cupom. Erro: {}" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." -msgstr "" +msgstr "Seu pedido {} não pode ser reembolsado, pois o cupom '{}' não tem suporte para reembolso." -#: ecommerce/extensions/api/serializers.py:2082 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" -msgstr "" +msgstr "Nota para criar um novo voucher para o pedido: {}" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "Nenhum SKU disponibilizado." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "Os produtos com SKU(s) [{skus}] não existem." #: ecommerce/extensions/api/v2/views/baskets.py:467 msgid "Provide username or is_anonymous query param, but not both" -msgstr "" +msgstr "Forneça o nome de usuário ou o parâmetro de consulta is_anonymous, mas não ambos" #: ecommerce/extensions/api/v2/views/products.py:54 #, python-brace-format msgid "Product API only supports {http_method} for {product_class} products." -msgstr "" +msgstr "A API do produto é compatível apenas com {http_method} para produtos {product_class}." #: ecommerce/extensions/api/v2/views/products.py:69 #, python-brace-format msgid "Missing or bad value for: [{name}]." -msgstr "" +msgstr "Valor ausente ou incorreto para: [{name}]." #: ecommerce/extensions/basket/models.py:119 #, python-brace-format @@ -917,84 +929,84 @@ msgstr "Tipo de Atributo" msgid "Text Attribute" msgstr "Atributo de Texto" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "Neste momento, não podemos permitir que aceda ao curso devido aos controlos de exportação." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "Clique aqui para adquirir uma inscrição para si" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "Clique aqui para reservar vários lugares neste curso" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "Código de cupão '{code}' expirou." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "Código de cupão '{code}' não está ativo." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" -msgstr "" +msgstr "O código do cupom '{code}' não está disponível. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "Código de cupão '{code}' não é válido para este cesto." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." -msgstr "" +msgstr "O código de cupom '{code}' não é válido para esta cesta para uma compra em pacote." -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "Código de cupão '{code}' adicionado ao cesto." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." -msgstr "" +msgstr "A cesta não se qualifica para o código de cupom {code}." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "Não foi possível aplicar o código '{code}'; é exigido o consentimento de partilha de dados." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "Depois de concluir o seu pedido, será capaz de selecionar datas a partir do seu painel de controlo." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "Depois de concluir o seu pedido, será automaticamente inscrito no modo validado do curso." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "Depois de concluir o seu pedido, receberá o crédito para o seu curso." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "Depois de concluir o seu pedido, será automaticamente inscrito no curso." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1009,9 +1021,9 @@ msgid "" "final and not eligible for refunds.{li_end}{ul_end} {paragraph_start}You " "will receive an email at {user_email} with your enrollment code(s). " "{paragraph_end}" -msgstr "" +msgstr "{paragraph_start}Ao comprar, você e a sua organização concordam com os seguintes termos:{paragraph_end} {ul_start} {li_start}Cada código é válido para o curso abrangido e só pode ser utilizado uma vez.{li_end} {li_start}Você é responsável pela distribuição de códigos aos seus alunos na sua organização.{li_end} {li_start}Cada código expirará no prazo de um ano a partir da data de compra ou, se antes, assim que o curso for encerrado.{li_end} {li_start}Se um curso não for marcado como ao ritmo do estudante, deverá confirmar que o curso está disponível antes de expirar. {li_end} {li_start} Não pode revender códigos a terceiros.{li_end} {li_start} Todos os edX para vendas comerciais são finais e não são elegíveis para reembolso.{li_end}{ul_end} {paragraph_start} Receberá um e-mail em {user_email} com o(s) seu(s) código(s) de inscrição. {paragraph_end}" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1020,42 +1032,42 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "{strong_start}A comprar só para si?{strong_end}{paragraph_start}Se está a comprar um único código para outra pessoa, por favor continue com a finalização da compra. No entanto, se for o estudante {link_start}volte atrás{link_end} para se inscrever diretamente.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "Já comprou estes produtos" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "Nenhum produto está disponível para compra." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" -msgstr "" +msgstr "quantidade atualizada com sucesso" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." -msgstr "" +msgstr "Não foi possível atualizar sua cesta. Corrija quaisquer erros de validação abaixo." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "Já adicionou o código do cupão '{code}' ao seu cesto." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "Código de cupão '{code}' não existe." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" -msgstr "" +msgstr "Nenhum cupom encontrado com id '%s'" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." -msgstr "" +msgstr "O código do cupom '%s' foi removido da sua cesta." #: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." @@ -1123,29 +1135,43 @@ msgstr "Estado" msgid "Failed to retrieve enrollment data." msgstr "Falha ao recuperar dados de registo." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "Número de vezes para tentar novamente acções de clientes IAP falhadas (por exemplo, criação de pagamentos, execução de pagamentos)" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "Número de dias passados para obter reembolsos para Android." + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "Identificação original da transacção" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" -msgstr "" +msgstr "Dia 3" #: ecommerce/extensions/offer/constants.py:33 msgid "Day 10" -msgstr "" +msgstr "Dia 10" #: ecommerce/extensions/offer/constants.py:34 msgid "Day 19" -msgstr "" +msgstr "Dia 19" #: ecommerce/extensions/offer/constants.py:40 msgid "Assign" -msgstr "" +msgstr "Atribuir" #: ecommerce/extensions/offer/constants.py:41 msgid "Remind" -msgstr "" +msgstr "Relembrar" #: ecommerce/extensions/offer/constants.py:42 msgid "Revoke" -msgstr "" +msgstr "Revogar" #: ecommerce/extensions/offer/constants.py:77 msgid "Automatic" @@ -1155,23 +1181,23 @@ msgstr "Automático" msgid "Manual" msgstr "Manual" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "ID do catálogo de cursos do Serviço Discovery." -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." -msgstr "" +msgstr "UUID para um EnterpriseCustomerCatalog do Enterprise Service." -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "Nome do UtilizadorEmpresarial" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "UUID do CatálogoUtilizadorEmpresarial" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1182,37 +1208,37 @@ msgstr "UUID do CatálogoUtilizadorEmpresarial" msgid "Program UUID" msgstr "Programa UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." -msgstr "" +msgstr "E-mail para utilizador pendente." -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." -msgstr "" +msgstr "Código atribuído com sucesso ao utilizador." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." -msgstr "" +msgstr "O código foi resgatado pelo utilizador." -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." -msgstr "" +msgstr "O e-mail para o utilizador foi devolvido." -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." -msgstr "" +msgstr "O código foi revogado para este utilizador." -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." -msgstr "" +msgstr "Ative uma versão de modelo específica." -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." -msgstr "" +msgstr "Email enviado." -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" -msgstr "" +msgstr "Este utilizador deve receber o email." #: ecommerce/extensions/offer/utils.py:97 #, python-brace-format @@ -1237,7 +1263,7 @@ msgstr "A administração de pedidos foi desativada devido à carga da base de d #: ecommerce/extensions/order/benefits.py:22 #, python-format msgid "%d%% discount for manual course enrollment order" -msgstr "" +msgstr "%d%% desconto para pedido manual de inscrição no curso" #: ecommerce/extensions/order/models.py:39 #: ecommerce/extensions/payment/models.py:26 @@ -1248,7 +1274,7 @@ msgstr "Processador de Pagamento" msgid "" "It expect that the order numbers stuck in fulfillment error state will be" " provided in a txt file format one per line." -msgstr "" +msgstr "Ele espera que os números de pedidos presos no estado de erro de atendimento sejam fornecidos em um formato de ficheiro txt, um por linha." #: ecommerce/extensions/partner/admin.py:28 msgid "Click 'Save and Continue Editing' to add stock records" @@ -1260,7 +1286,7 @@ msgstr "Clique em 'Guardar e Continuar a Editar' para adicionar registos de stoc msgid "Partner" msgstr "Parceiro" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:259 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Parceiros" @@ -1269,14 +1295,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "Diners" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Discover" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "JCB" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "UnionPay" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "Desconhecido" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1307,7 +1349,7 @@ msgstr "Estou a comprar em nome do meu empregador ou de uma organização para a #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "Houve um problema ao recuperar o seu cesto. Atualize a página para tentar novamente." @@ -1375,25 +1417,25 @@ msgstr "Número de vezes para tentar novamente acções de clientes Paypal falha #: ecommerce/extensions/payment/models.py:112 msgid "More than 10 digits before the decimal not allowed for fixed value." -msgstr "" +msgstr "Mais de 10 dígitos antes do decimal não permitido para valor fixo." #: ecommerce/extensions/payment/models.py:118 msgid "More than 2 digits after the decimal not allowed for fixed value." -msgstr "" +msgstr "Mais de 2 dígitos após o decimal não permitido para valor fixo." #: ecommerce/extensions/payment/models.py:126 msgid "Percentage greater than 100 not allowed." -msgstr "" +msgstr "Percentagem maior que 100 não é permitida." #. Translators: This is a string placed in the middle of a truncated string #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "transacção recusada" @@ -1405,7 +1447,7 @@ msgid "" "Refund administration has been disabled due to the load on the database. " "This functionality can be restored by activating the {switch_name} Waffle " "switch. Be careful when re-activating this switch!" -msgstr "" +msgstr "A administração de reembolsos foi desactivada devido à carga na base de dados. Esta funcionalidade pode ser restaurada activando o botão {switch_name} Waffle switch. Tenha cuidado ao reactivar este interruptor!" #: ecommerce/extensions/refund/models.py:67 msgid "Order" @@ -1438,7 +1480,7 @@ msgid "Line Credit (excl. tax)" msgstr "Linha de Crédito (excl. imp.)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1461,7 +1503,7 @@ msgstr "Pode ser usado multiplas vezes por vários clientes" #: ecommerce/extensions/voucher/models.py:42 msgid "Can only be used once per customer" -msgstr "" +msgstr "Só pode ser usado uma vez por cliente" #: ecommerce/extensions/voucher/models.py:43 msgid "Can be used multiple times by one customer" @@ -1469,19 +1511,19 @@ msgstr "Pode ser usado várias vezes por um cliente" #: ecommerce/extensions/voucher/models.py:45 msgid "Usage" -msgstr "" +msgstr "Uso" #: ecommerce/extensions/voucher/models.py:48 msgid "Is Public Code Batch" -msgstr "" +msgstr "É Lote de Código Público" #: ecommerce/extensions/voucher/models.py:49 msgid "Should this code batch be public or private for assignment." -msgstr "" +msgstr "Caso este lote de códigos seja público ou privado para atribuição." #: ecommerce/extensions/voucher/models.py:63 msgid "This voucher is assigned to another user." -msgstr "" +msgstr "Este voucher é atribuído a outro utilizador." #: ecommerce/extensions/voucher/tests/test_utils.py:215 #: ecommerce/extensions/voucher/utils.py:76 @@ -1493,7 +1535,7 @@ msgstr "Amortizado" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1555,7 +1597,7 @@ msgstr "Código" #: ecommerce/extensions/voucher/utils.py:171 msgid "This row applies to all vouchers" -msgstr "" +msgstr "Esta linha aplica-se a todos os vouchers" #: ecommerce/extensions/voucher/utils.py:172 #: ecommerce/extensions/voucher/utils.py:275 @@ -1751,7 +1793,7 @@ msgstr "Já existe uma oferta para este programa." #: ecommerce/programs/forms.py:90 #, python-brace-format msgid "{current_date} Discount for the {program_title} {program_type} Program" -msgstr "" +msgstr "{current_date} Desconto para o Programa {program_title} {program_type}" #: ecommerce/programs/templates/programs/programoffer_form.html:9 #, python-format @@ -1783,7 +1825,7 @@ msgid "" "\n" " %(platform_name)s Program Offer Administration Tool\n" " " -msgstr "" +msgstr "\n %(platform_name)s Ferramenta de Administração da Oferta do Programa\n " #: ecommerce/programs/templates/programs/programoffer_list.html:26 msgid "Current program offers" @@ -1829,7 +1871,7 @@ msgstr "UTM Conteúdo" msgid "UTM Created At" msgstr "UTM Criado Às" -#: ecommerce/settings/_oscar.py:216 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1842,38 +1884,38 @@ msgstr "UTM Criado Às" msgid "Dashboard" msgstr "Painel de Controlo" -#: ecommerce/settings/_oscar.py:221 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Catálogo" -#: ecommerce/settings/_oscar.py:225 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Produtos" -#: ecommerce/settings/_oscar.py:229 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Tipos de Produto" -#: ecommerce/settings/_oscar.py:233 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Categorias" -#: ecommerce/settings/_oscar.py:237 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Intervalos" -#: ecommerce/settings/_oscar.py:241 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Alertas de pouco stock" -#: ecommerce/settings/_oscar.py:247 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Preenchimento" -#: ecommerce/settings/_oscar.py:251 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1885,11 +1927,11 @@ msgstr "Preenchimento" msgid "Orders" msgstr "Pedidos" -#: ecommerce/settings/_oscar.py:255 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Estatísticas" -#: ecommerce/settings/_oscar.py:263 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1900,25 +1942,25 @@ msgstr "Estatísticas" msgid "Refunds" msgstr "Reembolsos" -#: ecommerce/settings/_oscar.py:269 ecommerce/settings/_oscar.py:273 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Clientes" -#: ecommerce/settings/_oscar.py:277 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Pedidos de alerta de stock" -#: ecommerce/settings/_oscar.py:283 ecommerce/settings/_oscar.py:287 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "Ofertas" -#: ecommerce/settings/_oscar.py:291 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "Vales de Desconto" -#: ecommerce/settings/_oscar.py:297 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Relatórios" @@ -2000,7 +2042,7 @@ msgid "" "\n" " %(platform_name)s Course Administration Tool\n" " " -msgstr "" +msgstr "\n %(platform_name)s Ferramenta de Administração do Curso\n " #: ecommerce/templates/courses/menu_options.html:8 msgid "Student Dashboard" @@ -2033,91 +2075,100 @@ msgid "" "Your order is complete. You will receive a confirmation message and your " "enrollment code(s) at {link_start}{email}{link_end}. If you need a receipt, " "you can print this page." -msgstr "" +msgstr "Seu pedido está completo. Você receberá uma mensagem de confirmação e seu(s) código(s) de inscrição em {link_start}{email}{link_end}. Se precisar de um recibo, você pode imprimir esta página." -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "O seu pedido está completo. Se precisar de um recibo, pode imprimir esta página. {Próximos passos:{próximo_arranque} 1. Verifique a sua caixa de correio electrónico de confirmação de encomenda de Get Smarter.{next_line} 2: Siga as instruções no correio electrónico para completar o seu registo." + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." -msgstr "" +msgstr "O seu pedido está completo. Se precisar de um recibo, pode imprimir esta página." -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "Número de encomenda:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "Método de Pagamento:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "Data do Pedido:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "Informação do Pedido" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Descrição" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "Preço do Item" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Quantidade:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "Descrição:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "Preço do item:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "Subtotal" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "de %(voucher_discount_amount)s" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" -msgstr "" +msgstr "Desconto do tipo %(type)s fornecido por %(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" -msgstr "" +msgstr "Desconto para sua primeira atualização" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." -msgstr "" +msgstr "O desconto do tipo %(type)s é fornecido." -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "Cortesia de %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Total" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "Obter Crédito do Curso" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2125,13 +2176,13 @@ msgid "" "organization’s website on your " "{link_start}{lms_dashboard_url}{link_middle}dashboard{link_end}, next to the" " course name." -msgstr "" +msgstr "Para receber equivalência académica deste curso, deve pedir equivalência na organização que oferece o curso. Pode encontrar um link para o website da organização no seu {link_start}{lms_dashboard_url}{link_middle}dashboard{link_end}, ao lado do nome do curso." -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "Ir para Painel de Controlo" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "Encontrar mais cursos" @@ -2157,7 +2208,7 @@ msgid "" " You may also view your previous orders on the {link_start}{order_history_url}{link_middle}{link_end}Account Settings{link_end}\n" " page.\n" " " -msgstr "" +msgstr "\n Você também pode visualizar seus pedidos anteriores na página {link_start}{order_history_url}{link_middle}{link_end}Configurações da conta{link_end}.\n " #: ecommerce/templates/edx/credit/_provider_detail.html:8 msgid "Select" @@ -2177,7 +2228,7 @@ msgid "" "\n" " Learn more about %(display_name)s credit?\n" " " -msgstr "" +msgstr "\n Saiba mais sobre o crédito %(display_name)s?" #: ecommerce/templates/edx/credit/_provider_detail.html:47 #, python-format @@ -2185,7 +2236,7 @@ msgid "" "\n" " Credit available until %(date)s\n" " " -msgstr "" +msgstr "\n Crédito disponível até %(date)s\n " #: ecommerce/templates/edx/credit/checkout.html:9 #, python-format @@ -2198,7 +2249,7 @@ msgid "" "\n" " Purchase Credit for %(course_name)s\n" " " -msgstr "" +msgstr "\n Crédito de compra para %(course_name)s\n " #: ecommerce/templates/edx/credit/checkout.html:34 #, python-format @@ -2208,7 +2259,7 @@ msgid "" " You must purchase your credit before %(date)s.\n" " Select one of the following institutions to purchase your credit.\n" " " -msgstr "" +msgstr "\n Parabéns! É elegível para comprar crédito de curso académico para este curso. \n Deve comprar seu crédito antes de %(date)s.\n Selecione uma das seguintes instituições para adquirir seu crédito.\n " #: ecommerce/templates/edx/credit/checkout.html:51 msgid "Price:" @@ -2263,7 +2314,7 @@ msgid "" "\n" " Please read {link_start}our FAQs to view common questions about our certificates.{link_end}\n" " " -msgstr "" +msgstr "\n Leia {link_start}nossas Perguntas frequentes para ver perguntas comuns sobre nossos certificados.{link_end}\n " #: ecommerce/templates/edx/email_confirmation_required.html:16 msgid "You are enrolling in: " @@ -2296,7 +2347,7 @@ msgstr "Cupões" #: ecommerce/templates/edx/partials/_administration_menu.html:8 msgid "Enterprise Coupons" -msgstr "" +msgstr "Cupons Empresariais" #: ecommerce/templates/edx/partials/_base_navbar.html:10 msgid "Toggle navigation" @@ -2338,7 +2389,7 @@ msgid "" " If you attempted to make a purchase, you have not been charged. Return to your {link_start}{link_middle}{homepage_url}dashboard{link_end} to try\n" " again, or {link_start}{homepage_url}{link_middle}contact {platform_name} Support{link_end}.\n" " " -msgstr "" +msgstr "\n Se tentou fazer uma compra, não lhe foi cobrado. Volte ao seu {link_start}{link_middle}{homepage_url}dashboard{link_end} para tentar\n novamente, ou {link_start}{homepage_url}{link_middle}contacte suporte {platform_name}{link_end}." #: ecommerce/templates/oscar/basket/messages/new_total.html:7 msgid "Your basket is now empty" @@ -2352,7 +2403,7 @@ msgid "" " {strong_start}We’ve updated your quantity.{strong_end}\n" " {paragraph_start}Your cart includes {num_items} enrollment codes at a total cost of {total}, that you will receive via email.{paragraph_end}\n" " " -msgstr "" +msgstr "\n {strong_start}Atualizamos sua quantidade.{strong_end}\n {paragraph_start}Seu carrinho inclui {num_items} códigos de inscrição a um custo total de {total}, que você receberá por e-mail.{paragraph_end}\n " #: ecommerce/templates/oscar/basket/messages/new_total.html:27 msgid "View basket" @@ -2411,7 +2462,7 @@ msgid "" "\n" " %(benefit)s%% discount for your first upgrade applied.\n" " " -msgstr "" +msgstr "\n %(benefit)s%% desconto para sua primeira atualização aplicada.\n " #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:104 #, python-format @@ -2532,7 +2583,7 @@ msgid "" "\n" " Coupon code %(voucher_code)s applied\n" " " -msgstr "" +msgstr "\n Código de cupom %(voucher_code)s aplicado\n " #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:116 msgid "Apply a coupon code" @@ -2541,7 +2592,7 @@ msgstr "Aplicar código do cupão" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:164 #, python-format msgid "Checkout with %(title)s" -msgstr "" +msgstr "Finalizar compra com %(title)s" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:166 msgid "Checkout" @@ -2554,7 +2605,7 @@ msgstr "Finalizar compra" msgid "" "{strong_start}Note:{strong_end} To complete your enrollment, select Checkout" " or Checkout with PayPal." -msgstr "" +msgstr "{strong_start}Observação:{strong_end} Para concluir sua inscrição, selecione Finalizar compra ou Finalizar compra com PayPal." #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:185 msgid "Have questions?" @@ -2637,7 +2688,7 @@ msgid "" "\n" " SDN Check Failure\n" " " -msgstr "" +msgstr "\n Falha na verificação de SDN\n " #: ecommerce/templates/oscar/checkout/sdn_failure.html:26 msgid "" @@ -2654,7 +2705,7 @@ msgid "" "{ofac_email_link} ofac.reconsideration@treasury.gov{end_link} for " "information about options for clearing a match. Your account will be " "suspended until this matter is resolved satisfactorily." -msgstr "" +msgstr "Se tiver dúvidas sobre a compensação de uma correspondência, contactar {ofac_email_link} ofac.reconsideration@treasury.gov{end_link} para informações sobre opções para a compensação de uma correspondência. A sua conta será suspensa até que este assunto seja resolvido de forma satisfatória." #: ecommerce/templates/oscar/communication/email_base.html:189 #: ecommerce/templates/oscar/customer/email_base.html:189 @@ -2674,7 +2725,7 @@ msgstr "Olá %(full_name)s," msgid "" "Thank you for purchasing %(course_title)s. A charge will appear on your " "credit or debit card statement with a company name of \"%(platform_name)s\"." -msgstr "" +msgstr "Obrigado por comprar %(course_title)s. Um débito aparecerá no extrato do seu cartão de crédito ou débito com o nome da empresa '%(platform_name)s'." #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:13 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:8 @@ -2838,7 +2889,7 @@ msgid "" "\n" " Download and save the {link_start}{download_csv_link}{link_middle} enrollment code file.{link_end}\n" " " -msgstr "" +msgstr "\n Descarregue e guarde o ficheiro de {link_start}{download_csv_link}{link_middle}código de inscrição{link_end}.\n " #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:34 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:9 @@ -2861,7 +2912,7 @@ msgid "" "\n" " To view your payment information, log in to see your Order History, under {link_start}{order_history_url}{link_middle}Account Settings{link_end}.\n" " " -msgstr "" +msgstr "\n Para ver as suas informações de pagamento, inicie sessão para ver o seu histórico de encomendas, em {link_start}{order_history_url}{link_middle}Definições de conta{link_end}.\n " #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:45 #, python-brace-format @@ -2869,7 +2920,7 @@ msgid "" "\n" " For more information and assistance, check our {link_start}Help Center{link_end}\n" " " -msgstr "" +msgstr "\n Para mais informações e assistência, consulte o nosso {link_start}Centro de Ajuda{link_end}\n " #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:50 #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.txt:16 diff --git a/ecommerce/conf/locale/pt_PT/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/pt_PT/LC_MESSAGES/djangojs.mo index df3568b557e..e299f22b52e 100644 Binary files a/ecommerce/conf/locale/pt_PT/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/pt_PT/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/pt_PT/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/pt_PT/LC_MESSAGES/djangojs.po index 3a6957dbb3d..f06fa4832df 100644 --- a/ecommerce/conf/locale/pt_PT/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/pt_PT/LC_MESSAGES/djangojs.po @@ -20,10 +20,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Filipa Macieira , 2021\n" -"Language-Team: Portuguese (Portugal) (http://www.transifex.com/open-edx/edx-platform/language/pt_PT/)\n" +"Language-Team: Portuguese (Portugal) (http://app.transifex.com/open-edx/edx-platform/language/pt_PT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -322,11 +322,11 @@ msgstr "Código de Inscrição" msgid "Discount Code" msgstr "Código do desconto" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Guardar Alterações" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Criar cupão" @@ -468,7 +468,7 @@ msgstr "Tipo de lugar" msgid "Can be used multiple times by one customer" msgstr "Pode ser usado várias vezes por um cliente" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "Criar e Adicionar Mais" diff --git a/ecommerce/conf/locale/ro/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ro/LC_MESSAGES/django.mo index 24282090f6f..04ee50f73a4 100644 Binary files a/ecommerce/conf/locale/ro/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ro/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ro/LC_MESSAGES/django.po b/ecommerce/conf/locale/ro/LC_MESSAGES/django.po index 3712f6a9115..649df16c56a 100644 --- a/ecommerce/conf/locale/ro/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ro/LC_MESSAGES/django.po @@ -16,10 +16,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Bogdan Mateescu, 2018\n" -"Language-Team: Romanian (http://www.transifex.com/open-edx/edx-platform/language/ro/)\n" +"Language-Team: Romanian (http://app.transifex.com/open-edx/edx-platform/language/ro/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,332 +48,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "Rădăcina URL a LMS al acestui site (e.g. https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Scrierea segmentului/cheia API." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Nume complet" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Nume" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -383,43 +383,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Audit" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Distincţie" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Profesional" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Verificat" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "Educație executivă" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -481,150 +481,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Data de început" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Data de încheiere" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -794,41 +804,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -836,39 +846,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -906,84 +917,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1000,7 +1011,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1009,44 +1020,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1112,6 +1123,20 @@ msgstr "Status" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1144,23 +1169,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1171,35 +1196,35 @@ msgstr "" msgid "Program UUID" msgstr "Programul UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1249,7 +1274,7 @@ msgstr "" msgid "Partner" msgstr "Partener" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Parteneri" @@ -1258,14 +1283,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1296,7 +1337,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1378,11 +1419,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1427,7 +1468,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1482,7 +1523,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1818,7 +1859,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1831,38 +1872,38 @@ msgstr "" msgid "Dashboard" msgstr "Panou" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1874,11 +1915,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1889,25 +1930,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Rapoarte" @@ -2024,89 +2065,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Total" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2116,11 +2166,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ro/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ro/LC_MESSAGES/djangojs.mo index bcc36864166..aeb7329e63c 100644 Binary files a/ecommerce/conf/locale/ro/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ro/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ro/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ro/LC_MESSAGES/djangojs.po index a4d1e0c5a72..5e5a9940891 100644 --- a/ecommerce/conf/locale/ro/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ro/LC_MESSAGES/djangojs.po @@ -16,10 +16,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Bogdan Mateescu, 2018\n" -"Language-Team: Romanian (http://www.transifex.com/open-edx/edx-platform/language/ro/)\n" +"Language-Team: Romanian (http://app.transifex.com/open-edx/edx-platform/language/ro/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -318,11 +318,11 @@ msgstr "Codul de înscriere" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Salvează schimbările" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -464,7 +464,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ru/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ru/LC_MESSAGES/django.mo index bf897e32edd..db025895dbb 100644 Binary files a/ecommerce/conf/locale/ru/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ru/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ru/LC_MESSAGES/django.po b/ecommerce/conf/locale/ru/LC_MESSAGES/django.po index 06638cb7cbe..329073d2b8c 100644 --- a/ecommerce/conf/locale/ru/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ru/LC_MESSAGES/django.po @@ -10,6 +10,7 @@ # Translators: # Translators: # b5a5d5cd2b8c637d1ac79fd846147b59_26cb89a <0e9f93b943aec65fc66f0e9c041009ed_739049>, 2018 +# Dmitry Broover, 2022 # Ilya , 2015 # Irina Fedulova , 2020 # Liubov Fomicheva , 2015-2017 @@ -28,10 +29,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Irina Fedulova , 2020\n" -"Language-Team: Russian (http://www.transifex.com/open-edx/edx-platform/language/ru/)\n" +"Last-Translator: Dmitry Broover, 2022\n" +"Language-Team: Russian (http://app.transifex.com/open-edx/edx-platform/language/ru/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -60,332 +61,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "Администрация пользователя была отключена в связи с нагрузкой на базу данных. Эта функция может быть восстановлена с помощью переключателя {switch_name} Вафельный переключатель. Будьте осторожны при повторном включении этого переключателя!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "Ссылка микросайта на основе LMS" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "Ссылка на главную страницу LMS (напр. https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "Путь к теме оформления сайта" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Платежные системы" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "Список платежных систем через запятую: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "Платежная система со стороны клиента" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "Процессор, который будет использоваться для платежей со стороны клиента" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "Настройки OAuth" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "JSON строка, содержащая настройки внутреннего интерфейса OAuth." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "Ключ сегмента" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Ключ записи сегмента/API." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "С электронного письма. " -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "Адрес, с которого отправляются электронные письма. " -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Включить коды регистрации" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Включите создание регистрационных кодов." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "Электронная почта поддержки оплаты" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "Контактная электронная почта для вопросов поддержки оплаты." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "поддержка платежа url" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "URL-адрес для вопросов поддержки оплаты." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "Имя UTM Cookie" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "Имя файла cookie, хранящего UTM-данные." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "Партнерское имя куки-файла" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "Имя файла cookie, в котором хранятся данные о партнере." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "Отправить уведомление о возврате по электронной почте" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "Включить проверку SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "Включить SDN проверку при оформлении заказа." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "списки SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "Разделенный запятыми список списков OFAC Казначейства для сверки." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Запрос активации аккаунта" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "Потребуйте от пользователя активации аккаунта, прежде чем позволить ему выкупить купон." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "Оптимально использовать исходный URL-адрес фрагмента" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Этот скрипт будет загружен на каждую страницу." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "Домен Базового Cookie" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "Базовый домен cookie, используемый для обмена файлами cookie между службами." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "Включить проверку на эмбарго" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "Включить проверку эмбарго при оформлении заказа." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "Открытие API URL" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "Включить Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "Разрешить частичное предложение программы" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "Включить применение предложений программы к оставшимся незарегистрированным или непроверенным курсам." -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Полное имя" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Имя" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "ЗаказчикПредприятия UUID" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "UUID для EnterpriseCustomer от Сервиса предприятия" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "Купона не существует." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "Код купона ещё не действителен. " -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "Срок действия купона истёк. " -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "Продукт [{product}] не доступен для покупки." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "Этот код купона больше недействителен. " -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "Этот код купона недействителен." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "Ваучер не применим к вашей текущей корзине. " -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Добро пожаловать в edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "Пожалуйста, выберите один из курсов, выбранных вашей организацией, чтобы начать обучение." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "Код не предоставлен. " -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU не предоставлен. " -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "Продукт не существует. " -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Вы не имеете права использовать этот купон." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "Не смог найти подходящего корпоративного клиента для этого купона." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "Предоставлено недействительное свидетельство о согласии на обмен данными." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "Вы уже купили место {course} " -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "Скидка была применена благодаря {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "Данный код купона недействителен для данного курса. Попробуй другой курс." -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "Сайт" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "Последняя дата/время до которого подтверждение может быть подано." @@ -395,43 +396,43 @@ msgstr "Последняя дата/время до которого подтв msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "Не удалось опубликовать коммерческие данные для {course_id} в LMS." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Бесплатный курс" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Кредит" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Сертификат Кодекса чести" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Профессиональный" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Подтверждённые" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -493,150 +494,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "Корпоративный клиент UUID" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "Каталог корпоративных клиентов UUID" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "Тип скидки" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr " Стоимость со скидкой" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Дата начала" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Дата окончания" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "Предложение уже существует для этой комбинации Enterprise & Catalog." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "Процентная скидка не может превышать 100%." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "Дата начала должна быть указана при указании даты окончания." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "Дата начала должна наступить до даты окончания." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -806,41 +817,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "НЕАКТИВНЫЙ" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "АКТИВНЫЙ" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "Продукты должны иметь тип сертификата." -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Продукт должен иметь цену." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "Вам необходимо предоставить UUID курса, чтобы создать право на обучение в курсе." -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "Продукты должны сообщать требуется ли проверка ID" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "Запрос ошибочного класса продукта [{product_class}]" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -848,39 +859,40 @@ msgid "" " been saved." msgstr "Курс [{course_id}] не был опубликован в LMS, потому что переключатель [publish_course_modes_to_lms] не работает. Чтобы избежать появления несуществующих номеров SKU, данные не были сохранены." -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Код регистрации" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Код скидки" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "SKUs не предоставлен" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "Продукт с SKU(s) [{skus}] не существует." @@ -918,84 +930,84 @@ msgstr "Тип атрибута" msgid "Text Attribute" msgstr "Текст атрибута" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "В связи с экспортным контролем, мы не можем позволить вам получить доступ к этому курсу в данный момент." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "Нажмите здесь, чтобы просто купить регистрацию для себя." -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "Нажмите здесь, чтобы приобрести несколько мест в этом курсе." -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "Код купона '{code}' истек." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "Код купона '{code}' не активен." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "Код купона '{code} не действителен для этой корзины." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "Код купона '{code}' добавлен в корзину." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "Не смог применить код '{code}'; для этого требуется согласие на обмен данными." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "После оформления заказа вы сможете выбрать даты курсов на панели инструментов." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "После выполнения заказа вы будете автоматически зачислены на верифицированную дорожку курса." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "После оформления заказа вы получите зачетные единицы за курс." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "После выполнения заказа вы будете автоматически зачислены на курс." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1012,7 +1024,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1021,44 +1033,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "{strong_start}Приобретаете только для себя?{strong_end}{paragraph_start}IЕсли вы покупаете один код для кого-то другого, пожалуйста, продолжайте оформлять заказ. Однако, если вы являетесь учеником {link_start}, возвращайтесь назад {link_end}, чтобы зарегистрироваться напрямую.{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "Вы уже приобрели эти продукты" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "Продукт не доступен для покупки." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "Вы уже добавили в корзину купон с кодом '{code}'" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "Купон с кодом '{code}' не существует." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "Последняя дата/время покупки." @@ -1124,6 +1136,20 @@ msgstr "Состояние" msgid "Failed to retrieve enrollment data." msgstr "Не удалось получить данные о регистрации." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1156,23 +1182,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "Каталог курсов ID от службы Discovery Service." -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "Имя ЗаказчикаПредприятия" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "КаталогКорпоративныхКлиентов UUID" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1183,35 +1209,35 @@ msgstr "КаталогКорпоративныхКлиентов UUID" msgid "Program UUID" msgstr "Программа UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1261,7 +1287,7 @@ msgstr "Нажмите 'Сохранить и продолжить редакт msgid "Partner" msgstr "Партнёр" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Партнеры" @@ -1270,14 +1296,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Узнавать" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1308,7 +1350,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "Возникла проблема с извлечением корзины. Обновите страницу, чтобы повторить попытку." @@ -1390,11 +1432,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1439,7 +1481,7 @@ msgid "Line Credit (excl. tax)" msgstr "Итого (без налогов)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1494,7 +1536,7 @@ msgstr "Использовать " #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1830,7 +1872,7 @@ msgstr "Содержимое UTM" msgid "UTM Created At" msgstr "UTM создано в" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1843,38 +1885,38 @@ msgstr "UTM создано в" msgid "Dashboard" msgstr "Панель управления" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Каталог" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Товары" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Виды товаров" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Категории" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Диапазон" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Оповещение о низких остатках" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Выполнение" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1886,11 +1928,11 @@ msgstr "Выполнение" msgid "Orders" msgstr "Заказы" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Статистика" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1901,25 +1943,25 @@ msgstr "Статистика" msgid "Refunds" msgstr "Возврат денежных средств" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Заказчики" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Запрос оповещения" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "Предложения" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "Ваучеры" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Отчёты" @@ -2036,89 +2078,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "Номер заказа:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "Способ оплаты:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "Дата заказа:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "Информация о заказе" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Описание" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "Цена за единицу" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Количество:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "Описание:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "Цена за единицу:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "промежуточная сумма" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "%(voucher_discount_amount)s от" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "в результате %(enterprise_name)s." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Всего" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "Получите зачетные единицы за курс" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2128,11 +2179,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "Найти больше курсов" diff --git a/ecommerce/conf/locale/ru/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ru/LC_MESSAGES/djangojs.mo index fe37ee43953..6254b3f6d72 100644 Binary files a/ecommerce/conf/locale/ru/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ru/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ru/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ru/LC_MESSAGES/djangojs.po index f9e1775e2ee..2daebd635e8 100644 --- a/ecommerce/conf/locale/ru/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ru/LC_MESSAGES/djangojs.po @@ -21,10 +21,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: ashed , 2022\n" -"Language-Team: Russian (http://www.transifex.com/open-edx/edx-platform/language/ru/)\n" +"Language-Team: Russian (http://app.transifex.com/open-edx/edx-platform/language/ru/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -323,11 +323,11 @@ msgstr "Регистрационный код" msgid "Discount Code" msgstr "Скидочный код" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Сохранить изменения" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Создать купон" @@ -469,7 +469,7 @@ msgstr "Тип места" msgid "Can be used multiple times by one customer" msgstr "Может использоваться несколько раз одним клиентом" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ru_RU/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ru_RU/LC_MESSAGES/django.mo index b0a9ec8f932..9be97aff136 100644 Binary files a/ecommerce/conf/locale/ru_RU/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ru_RU/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ru_RU/LC_MESSAGES/django.po b/ecommerce/conf/locale/ru_RU/LC_MESSAGES/django.po index 1e421a7f217..37e22830211 100644 --- a/ecommerce/conf/locale/ru_RU/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ru_RU/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Russian (Russia) (http://www.transifex.com/open-edx/edx-platform/language/ru_RU/)\n" +"Language-Team: Russian (Russia) (http://app.transifex.com/open-edx/edx-platform/language/ru_RU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ru_RU/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ru_RU/LC_MESSAGES/djangojs.mo index db56cca8b3c..7ebc11c3241 100644 Binary files a/ecommerce/conf/locale/ru_RU/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ru_RU/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ru_RU/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ru_RU/LC_MESSAGES/djangojs.po index 700ad69a2a1..2ac086666de 100644 --- a/ecommerce/conf/locale/ru_RU/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ru_RU/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Russian (Russia) (http://www.transifex.com/open-edx/edx-platform/language/ru_RU/)\n" +"Language-Team: Russian (Russia) (http://app.transifex.com/open-edx/edx-platform/language/ru_RU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ru_UA/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ru_UA/LC_MESSAGES/django.mo index 7915a702d46..21f2dfbde37 100644 Binary files a/ecommerce/conf/locale/ru_UA/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ru_UA/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ru_UA/LC_MESSAGES/django.po b/ecommerce/conf/locale/ru_UA/LC_MESSAGES/django.po index 0e0bfae72e9..04c3d2e43e0 100644 --- a/ecommerce/conf/locale/ru_UA/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ru_UA/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Russian (Ukraine) (http://www.transifex.com/open-edx/edx-platform/language/ru_UA/)\n" +"Language-Team: Russian (Ukraine) (http://app.transifex.com/open-edx/edx-platform/language/ru_UA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ru_UA/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ru_UA/LC_MESSAGES/djangojs.mo index 7f29f26e337..dfd860a5f0e 100644 Binary files a/ecommerce/conf/locale/ru_UA/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ru_UA/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ru_UA/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ru_UA/LC_MESSAGES/djangojs.po index bee8db888fc..45d050256a7 100644 --- a/ecommerce/conf/locale/ru_UA/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ru_UA/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Russian (Ukraine) (http://www.transifex.com/open-edx/edx-platform/language/ru_UA/)\n" +"Language-Team: Russian (Ukraine) (http://app.transifex.com/open-edx/edx-platform/language/ru_UA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/si/LC_MESSAGES/django.mo b/ecommerce/conf/locale/si/LC_MESSAGES/django.mo index 5231d34447a..974523978ec 100644 Binary files a/ecommerce/conf/locale/si/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/si/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/si/LC_MESSAGES/django.po b/ecommerce/conf/locale/si/LC_MESSAGES/django.po index c0d75354fac..846f3ae5fb5 100644 --- a/ecommerce/conf/locale/si/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/si/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Sinhala (http://www.transifex.com/open-edx/edx-platform/language/si/)\n" +"Language-Team: Sinhala (http://app.transifex.com/open-edx/edx-platform/language/si/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/si/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/si/LC_MESSAGES/djangojs.mo index e17a6be827b..fa1e018a5b3 100644 Binary files a/ecommerce/conf/locale/si/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/si/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/si/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/si/LC_MESSAGES/djangojs.po index 6035dbcbc76..f72a6579b3f 100644 --- a/ecommerce/conf/locale/si/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/si/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Sinhala (http://www.transifex.com/open-edx/edx-platform/language/si/)\n" +"Language-Team: Sinhala (http://app.transifex.com/open-edx/edx-platform/language/si/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/sk/LC_MESSAGES/django.mo b/ecommerce/conf/locale/sk/LC_MESSAGES/django.mo index d42cd9e6a71..f3c7feb7eb4 100644 Binary files a/ecommerce/conf/locale/sk/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/sk/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/sk/LC_MESSAGES/django.po b/ecommerce/conf/locale/sk/LC_MESSAGES/django.po index 40f4ebbd34c..7d89271d9be 100644 --- a/ecommerce/conf/locale/sk/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/sk/LC_MESSAGES/django.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Marcel Miklosik , 2015\n" -"Language-Team: Slovak (http://www.transifex.com/open-edx/edx-platform/language/sk/)\n" +"Language-Team: Slovak (http://app.transifex.com/open-edx/edx-platform/language/sk/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,332 +47,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -382,43 +382,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -480,150 +480,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -793,41 +803,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -835,39 +845,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -905,84 +916,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -999,7 +1010,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1008,44 +1019,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1111,6 +1122,20 @@ msgstr "Stav" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1143,23 +1168,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1170,35 +1195,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1248,7 +1273,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1257,14 +1282,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1295,7 +1336,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1377,11 +1418,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1426,7 +1467,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1481,7 +1522,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1817,7 +1858,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1830,38 +1871,38 @@ msgstr "" msgid "Dashboard" msgstr "Palubná doska" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1873,11 +1914,11 @@ msgstr "" msgid "Orders" msgstr "Objednávky" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1888,25 +1929,25 @@ msgstr "" msgid "Refunds" msgstr "Refundácie" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Zákazníci" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2023,89 +2064,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Množstvo:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2115,11 +2165,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/sk/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/sk/LC_MESSAGES/djangojs.mo index 321dbf4d1a0..953cbb69d5d 100644 Binary files a/ecommerce/conf/locale/sk/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/sk/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/sk/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/sk/LC_MESSAGES/djangojs.po index a7306fbd0a1..5b9cae17024 100644 --- a/ecommerce/conf/locale/sk/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/sk/LC_MESSAGES/djangojs.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Marcel Miklosik , 2015\n" -"Language-Team: Slovak (http://www.transifex.com/open-edx/edx-platform/language/sk/)\n" +"Language-Team: Slovak (http://app.transifex.com/open-edx/edx-platform/language/sk/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,11 +317,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -463,7 +463,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/sl/LC_MESSAGES/django.mo b/ecommerce/conf/locale/sl/LC_MESSAGES/django.mo index 19736c473c0..f2d6c4a53c3 100644 Binary files a/ecommerce/conf/locale/sl/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/sl/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/sl/LC_MESSAGES/django.po b/ecommerce/conf/locale/sl/LC_MESSAGES/django.po index b31ed59ec70..a6e7e53e3a8 100644 --- a/ecommerce/conf/locale/sl/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/sl/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Črtomir Podlipnik, 2022\n" -"Language-Team: Slovenian (http://www.transifex.com/open-edx/edx-platform/language/sl/)\n" +"Language-Team: Slovenian (http://app.transifex.com/open-edx/edx-platform/language/sl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/sl/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/sl/LC_MESSAGES/djangojs.mo index 6bb17c1378a..f49f968f4f5 100644 Binary files a/ecommerce/conf/locale/sl/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/sl/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/sl/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/sl/LC_MESSAGES/djangojs.po index c6dd9b28439..2baba0ab516 100644 --- a/ecommerce/conf/locale/sl/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/sl/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Črtomir Podlipnik, 2022\n" -"Language-Team: Slovenian (http://www.transifex.com/open-edx/edx-platform/language/sl/)\n" +"Language-Team: Slovenian (http://app.transifex.com/open-edx/edx-platform/language/sl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/so/LC_MESSAGES/django.mo b/ecommerce/conf/locale/so/LC_MESSAGES/django.mo index ded7487519b..f66c20789a3 100644 Binary files a/ecommerce/conf/locale/so/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/so/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/so/LC_MESSAGES/django.po b/ecommerce/conf/locale/so/LC_MESSAGES/django.po index 29733d4dc5c..3bdeb81077f 100644 --- a/ecommerce/conf/locale/so/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/so/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Somali (http://www.transifex.com/open-edx/edx-platform/language/so/)\n" +"Language-Team: Somali (http://app.transifex.com/open-edx/edx-platform/language/so/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/so/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/so/LC_MESSAGES/djangojs.mo index 450c889fd3f..754bb6b84fe 100644 Binary files a/ecommerce/conf/locale/so/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/so/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/so/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/so/LC_MESSAGES/djangojs.po index 9aab1e8162e..55189f0427b 100644 --- a/ecommerce/conf/locale/so/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/so/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Somali (http://www.transifex.com/open-edx/edx-platform/language/so/)\n" +"Language-Team: Somali (http://app.transifex.com/open-edx/edx-platform/language/so/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/sq/LC_MESSAGES/django.mo b/ecommerce/conf/locale/sq/LC_MESSAGES/django.mo index d3f7307fb1a..2cd9b4afe21 100644 Binary files a/ecommerce/conf/locale/sq/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/sq/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/sq/LC_MESSAGES/django.po b/ecommerce/conf/locale/sq/LC_MESSAGES/django.po index 8c7e762d03d..409ba772a67 100644 --- a/ecommerce/conf/locale/sq/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/sq/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Faton Nuha , 2015-2016\n" -"Language-Team: Albanian (http://www.transifex.com/open-edx/edx-platform/language/sq/)\n" +"Language-Team: Albanian (http://app.transifex.com/open-edx/edx-platform/language/sq/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "OAuth konfigurime" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/sq/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/sq/LC_MESSAGES/djangojs.mo index 43f2dd22486..e2100474e48 100644 Binary files a/ecommerce/conf/locale/sq/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/sq/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/sq/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/sq/LC_MESSAGES/djangojs.po index 7e43c89a181..c89bceb64de 100644 --- a/ecommerce/conf/locale/sq/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/sq/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Faton Nuha , 2015-2017\n" -"Language-Team: Albanian (http://www.transifex.com/open-edx/edx-platform/language/sq/)\n" +"Language-Team: Albanian (http://app.transifex.com/open-edx/edx-platform/language/sq/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/sr/LC_MESSAGES/django.mo b/ecommerce/conf/locale/sr/LC_MESSAGES/django.mo index a56a49aa7f0..b8d194468c9 100644 Binary files a/ecommerce/conf/locale/sr/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/sr/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/sr/LC_MESSAGES/django.po b/ecommerce/conf/locale/sr/LC_MESSAGES/django.po index 82107fd9620..e203008dc04 100644 --- a/ecommerce/conf/locale/sr/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/sr/LC_MESSAGES/django.po @@ -16,10 +16,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Sladjan Kantar , 2016\n" -"Language-Team: Serbian (http://www.transifex.com/open-edx/edx-platform/language/sr/)\n" +"Language-Team: Serbian (http://app.transifex.com/open-edx/edx-platform/language/sr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -48,332 +48,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -383,43 +383,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -481,150 +481,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -794,41 +804,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -836,39 +846,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -906,84 +917,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1000,7 +1011,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1009,44 +1020,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1112,6 +1123,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1144,23 +1169,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1171,35 +1196,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1249,7 +1274,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1258,14 +1283,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1296,7 +1337,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1378,11 +1419,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1427,7 +1468,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1482,7 +1523,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1818,7 +1859,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1831,38 +1872,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1874,11 +1915,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1889,25 +1930,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2024,89 +2065,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2116,11 +2166,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/sr/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/sr/LC_MESSAGES/djangojs.mo index c73973623ae..15eec93dc90 100644 Binary files a/ecommerce/conf/locale/sr/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/sr/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/sr/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/sr/LC_MESSAGES/djangojs.po index 6aacc209cba..81396796ca9 100644 --- a/ecommerce/conf/locale/sr/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/sr/LC_MESSAGES/djangojs.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Sladjan Kantar , 2016\n" -"Language-Team: Serbian (http://www.transifex.com/open-edx/edx-platform/language/sr/)\n" +"Language-Team: Serbian (http://app.transifex.com/open-edx/edx-platform/language/sr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -316,11 +316,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -462,7 +462,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/sv/LC_MESSAGES/django.mo b/ecommerce/conf/locale/sv/LC_MESSAGES/django.mo index 72e2891d159..d715fd6f593 100644 Binary files a/ecommerce/conf/locale/sv/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/sv/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/sv/LC_MESSAGES/django.po b/ecommerce/conf/locale/sv/LC_MESSAGES/django.po index 8f6a68ba4f5..2201730b3ec 100644 --- a/ecommerce/conf/locale/sv/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/sv/LC_MESSAGES/django.po @@ -10,6 +10,7 @@ # Translators: # Translators: # Clinton Blackburn , 2016 +# Emil Örberg , 2023 # Hans Magnusson , 2016 # Kristoffer Grundström , 2015 # Thomas Ochman , 2018 @@ -17,10 +18,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Thomas Ochman , 2018\n" -"Language-Team: Swedish (http://www.transifex.com/open-edx/edx-platform/language/sv/)\n" +"Last-Translator: Emil Örberg , 2023\n" +"Language-Team: Swedish (http://app.transifex.com/open-edx/edx-platform/language/sv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,332 +50,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -384,43 +385,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -482,150 +483,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -795,41 +806,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -837,39 +848,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -907,84 +919,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1001,7 +1013,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1010,44 +1022,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1113,6 +1125,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1145,23 +1171,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1172,35 +1198,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1250,7 +1276,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1259,14 +1285,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1297,7 +1339,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1379,11 +1421,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1428,7 +1470,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1483,7 +1525,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1819,7 +1861,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1832,38 +1874,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1875,11 +1917,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1890,25 +1932,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2025,89 +2067,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2117,11 +2168,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/sv/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/sv/LC_MESSAGES/djangojs.mo index da0ffdf0fd2..1c8b3568631 100644 Binary files a/ecommerce/conf/locale/sv/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/sv/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/sv/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/sv/LC_MESSAGES/djangojs.po index ff66defc84b..1c5b61187b1 100644 --- a/ecommerce/conf/locale/sv/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/sv/LC_MESSAGES/djangojs.po @@ -9,16 +9,17 @@ # Translators: # Translators: # Translators: +# Emil Örberg , 2023 # Kristoffer Grundström , 2015 # Thomas Ochman , 2018 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" -"Last-Translator: Thomas Ochman , 2018\n" -"Language-Team: Swedish (http://www.transifex.com/open-edx/edx-platform/language/sv/)\n" +"Last-Translator: Emil Örberg , 2023\n" +"Language-Team: Swedish (http://app.transifex.com/open-edx/edx-platform/language/sv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -317,11 +318,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -463,7 +464,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/sv_SE/LC_MESSAGES/django.mo b/ecommerce/conf/locale/sv_SE/LC_MESSAGES/django.mo index 9d6d7423331..0b700220d10 100644 Binary files a/ecommerce/conf/locale/sv_SE/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/sv_SE/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/sv_SE/LC_MESSAGES/django.po b/ecommerce/conf/locale/sv_SE/LC_MESSAGES/django.po index bf2008ed6b1..d47ddafd2f6 100644 --- a/ecommerce/conf/locale/sv_SE/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/sv_SE/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Swedish (Sweden) (http://www.transifex.com/open-edx/edx-platform/language/sv_SE/)\n" +"Language-Team: Swedish (Sweden) (http://app.transifex.com/open-edx/edx-platform/language/sv_SE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/sv_SE/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/sv_SE/LC_MESSAGES/djangojs.mo index 5f5de71ac15..a43d38a6d08 100644 Binary files a/ecommerce/conf/locale/sv_SE/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/sv_SE/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/sv_SE/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/sv_SE/LC_MESSAGES/djangojs.po index f5da917a1b4..51d3334a883 100644 --- a/ecommerce/conf/locale/sv_SE/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/sv_SE/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Swedish (Sweden) (http://www.transifex.com/open-edx/edx-platform/language/sv_SE/)\n" +"Language-Team: Swedish (Sweden) (http://app.transifex.com/open-edx/edx-platform/language/sv_SE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/sw/LC_MESSAGES/django.mo b/ecommerce/conf/locale/sw/LC_MESSAGES/django.mo index fee95b7042d..85387e63589 100644 Binary files a/ecommerce/conf/locale/sw/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/sw/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/sw/LC_MESSAGES/django.po b/ecommerce/conf/locale/sw/LC_MESSAGES/django.po index 56d511ba06c..8ea4e18e1b3 100644 --- a/ecommerce/conf/locale/sw/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/sw/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Laura Chogo , 2020\n" -"Language-Team: Swahili (http://www.transifex.com/open-edx/edx-platform/language/sw/)\n" +"Language-Team: Swahili (http://app.transifex.com/open-edx/edx-platform/language/sw/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/sw/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/sw/LC_MESSAGES/djangojs.mo index 3bf513eb726..bf187722870 100644 Binary files a/ecommerce/conf/locale/sw/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/sw/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/sw/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/sw/LC_MESSAGES/djangojs.po index 146cb3e63ce..78a8a297408 100644 --- a/ecommerce/conf/locale/sw/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/sw/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Swahili (http://www.transifex.com/open-edx/edx-platform/language/sw/)\n" +"Language-Team: Swahili (http://app.transifex.com/open-edx/edx-platform/language/sw/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/sw_KE/LC_MESSAGES/django.mo b/ecommerce/conf/locale/sw_KE/LC_MESSAGES/django.mo index 8d482a2bfee..43a1504b485 100644 Binary files a/ecommerce/conf/locale/sw_KE/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/sw_KE/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/sw_KE/LC_MESSAGES/django.po b/ecommerce/conf/locale/sw_KE/LC_MESSAGES/django.po index 0f53196eb53..61e3821179b 100644 --- a/ecommerce/conf/locale/sw_KE/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/sw_KE/LC_MESSAGES/django.po @@ -20,10 +20,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: YAHAYA MWAVURIZI , 2017\n" -"Language-Team: Swahili (Kenya) (http://www.transifex.com/open-edx/edx-platform/language/sw_KE/)\n" +"Language-Team: Swahili (Kenya) (http://app.transifex.com/open-edx/edx-platform/language/sw_KE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -52,332 +52,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "LMS msingi wa url kwa desturi ya tovuti/tovuti ndogo" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "Mzizi wa URL kwa LMS katika tovuti hii (e.g https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "Njia kufikia lengo la desturi ya tovuti" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Watayarishaji malipo" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "Orodha ya majina ya wachakataji iliyotenganishwa na alama ya koma: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "Mthibitishaji wa malipo ya mteja" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "Kithibitisho kitakachotumika kwa ajili ya malipo ya mteja" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "Mitegesho ya OAuth " -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "Sentensi ya JSON yenye mitegesho ya OAuth." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "Namba za siri" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Sehemu ya kuweka namba za siri/namba za siri za API." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "Kutoka kwenye barua pepe" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "Anwani inayotumiwa kutuma barua pepe." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Wezesha vificho vya 'usajili'" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Wezewsha uundaji wa vificho vya 'usajili'." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "'Barua pepe' ya usaidizi wa malipo" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "Anwani ya 'barua pepe' kwa ajili ya mawasiliano ya msaada." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "Anwani ya msaada wa malipo" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "Anwani ya masuala ya msaada wa malipo." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "Jina la Kumbukumbu za Mtandaoni za UTM" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "Jina la eneo lenye kuhifadhi taarifa za UTM." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "Tuma taarifa ya barua pepe ya marejesho" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "Wezesha uingiaji wa SDN" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "Wezesha uingiaji na utokaji wa SDN." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "orodha za SDN" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "Orodha ya kukaguliwa ya Hazina ya OFAC." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Inahitaji Uamshaji Akaunti" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "Inahitaji watumiaji waamshe akaunti zao kabla ya kuruhusiwa kukomboa kuponi." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Maandishi haya yatatokea kwenye kila ukurasa." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "Wezesha uratibu wa vikwazo" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Jina Kamili" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Jina" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "UUID kwa ajili ya Mteja kutoka kwa Mtoa Huduma." -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "'Kuponi' haipo." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "Namba ya kuponi hii si halali." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "Namba ya kuponi hii imepitwa na muda." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "Bidhaa [{product}] haipatikani kwa ununuzi." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "'Kificho cha kuponi' hii hakipo." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "Kificho cha kuponi hii sio halali" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "Vocha haitumiki kwenye awamu yako ya sasa ya masomo." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Karibu kwenye edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "Tafadhali chagua kozi kutoka kwenye zile zilizoteuliwa na taasisi yako ili uanze mafunzo." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "Kificho hakijatolewa" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU haijatolewa." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "Bidhaa haipo" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Hustahiki kutumia kuponi 'hii'." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "Haikuweza kupata Mteja anaelingana na kuponi hii." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "Namba batili ya kupeana taarifa imetolewa." -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "Tayari umeshanunua {course} nafasi ya kozi." -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "Ombi la punguzo limewasilishwa, kwa ajili ya {enterprise_customer_name}." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "Tovuti" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "Tarehe ya mwisho kutuma uhakiki wa bidhaa hii. " @@ -387,43 +387,43 @@ msgstr "Tarehe ya mwisho kutuma uhakiki wa bidhaa hii. " msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "Imeshindwa kuchapisha taarifa za biashara ya {course_id} kwa LMS." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Ukaguzi " -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Mkopo" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Heshima" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Mtaalamu" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Imehakikiwa" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -485,150 +485,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "Aina ya Punguzo la bei" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "Thamani ya Punguzo la bei" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Tarehe ya Kuanza" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Tarehe ya Kumaliza" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "Asilimia ya punguzo la bei haiwezi kuwa kubwa kuliko 100%." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "Tarehe ya kuanza lazima ibainishwe wakati wa kubainisha tarehe ya kumaliza." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "Tarehe ya kuanza lazima iwe mwanzo kabla ya tarehe ya kumaliza." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -798,41 +808,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "HAIPO HAI" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "HAI" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Bidhaa lazima ziwe na bei." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "Bidhaa lazima zioneshe kama Kitambulisho cha uhakiki kinahitajika." -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "Daraja la bidhaa zisizo halali [{product_class}] limeombwa." -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -840,39 +850,40 @@ msgid "" " been saved." msgstr "Kozi [{course_id}] haikuchapishwa kwenye LMS kwasababu kibonye cha [publish_course_modes_to_Ims] kimezuiwa. Kuepuka SKUs hewa, ujumbe haujahifadhiwa." -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Kificho cha 'usajili'" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "Kificho cha 'punguzo'" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "Hakuna SKUs zilizotolewa." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "Bidhaa zenye SKU(s) [{skus}] hazipo." @@ -910,84 +921,84 @@ msgstr "Aina Ya Sifa" msgid "Text Attribute" msgstr "Sifa ya Maandishi" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "Kulingana na usimamizi wa utumaji taarifa, hatuwezi kukuruhusu kuipata kozi hii muda huu." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "Bofya hapa ununue usajili wako" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "Bofya hapa kununua nafasi nyingi kwenye kozi hii" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "Namba ya kuponi '{code}' imepitwa na muda wake." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "Namba ya kuponi '{code}' haijaamshwa." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "Namba ya kuponi '{code}' imewekwa kwenye hazina ya manunuzi." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "Haikuweza kutumia namba '{code}'; inahitaji idhini ya kupeana taarifa." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1004,7 +1015,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1013,44 +1024,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "Tayari umeshanunua bidhaa hizi" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "Tayari umeshaweka namba ya kuponi '{code}' kwenye hazina yako ya manunuzi mtandaoni." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "Namba ya kuponi '{code}' haipo." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "Muda/tarehe ya mwisho ambayo bidhaa inaweza kununuliwa. " @@ -1116,6 +1127,20 @@ msgstr "Hali " msgid "Failed to retrieve enrollment data." msgstr "Imeshindikana kupata taarifa za uandikishaji.." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1148,23 +1173,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1175,35 +1200,35 @@ msgstr "" msgid "Program UUID" msgstr "Tengeneza programu ya UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1253,7 +1278,7 @@ msgstr "Bofya 'Save and continue Editing' kuongeza taarifa za mali." msgid "Partner" msgstr "Mbia" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "Wabia" @@ -1262,14 +1287,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Discover" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1300,7 +1341,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "Kulikuwa na tatizo katika kupata ujazo wako. Onesha upya ukurusa kujaribu tena." @@ -1382,11 +1423,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1431,7 +1472,7 @@ msgid "Line Credit (excl. tax)" msgstr "Mstari wa Mkopo (bila kodi)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1486,7 +1527,7 @@ msgstr "Imerejeshwa" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1822,7 +1863,7 @@ msgstr " Maudhui ya UTM " msgid "UTM Created At" msgstr "UTM Iliyoundwa Katika" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1835,38 +1876,38 @@ msgstr "UTM Iliyoundwa Katika" msgid "Dashboard" msgstr "Dashibodi" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Katalogi" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Bidhaa" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Aina za bidhaa" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Makundi" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Nafasi" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Tahadhari za upungufu wa mali" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Tekelezo" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1878,11 +1919,11 @@ msgstr "Tekelezo" msgid "Orders" msgstr "Maagizi /Amri" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "Takwimu" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1893,25 +1934,25 @@ msgstr "Takwimu" msgid "Refunds" msgstr "Marejesho ya fedha zilizolipwa" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Wateja" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Tahadhari ya uhitaji wa mali" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "Ahadi" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "Vocha" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Ripoti" @@ -2028,89 +2069,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "Namba ya Agizo" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "Njia ya Malipo:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "Tarehe ya Agizo" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "Taarifa za Agizo" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Maelezo" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "Bei ya Bidhaa" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Kiasi:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "Maelezo:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "Bei ya Bidhaa:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "Jumla ndogo" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "Kwa fadhila ya%(enterprise_name)s" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Jumla" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "Pata Mkopo wa Kozi Yako" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2120,11 +2170,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/sw_KE/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/sw_KE/LC_MESSAGES/djangojs.mo index 69e7350405c..a22f619100b 100644 Binary files a/ecommerce/conf/locale/sw_KE/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/sw_KE/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/sw_KE/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/sw_KE/LC_MESSAGES/djangojs.po index ba01cad77f7..033b8785197 100644 --- a/ecommerce/conf/locale/sw_KE/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/sw_KE/LC_MESSAGES/djangojs.po @@ -22,10 +22,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Innocent Masue , 2017\n" -"Language-Team: Swahili (Kenya) (http://www.transifex.com/open-edx/edx-platform/language/sw_KE/)\n" +"Language-Team: Swahili (Kenya) (http://app.transifex.com/open-edx/edx-platform/language/sw_KE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -324,11 +324,11 @@ msgstr "Msimbo wa kujiandikisha" msgid "Discount Code" msgstr "Msimbo uliopunguzwa" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Hifadhi Mabadiliko" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Buni Kuponi" @@ -470,7 +470,7 @@ msgstr "Aina ya Idhini" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ta/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ta/LC_MESSAGES/django.mo index 6bf123157b5..6d6fcf2733d 100644 Binary files a/ecommerce/conf/locale/ta/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ta/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ta/LC_MESSAGES/django.po b/ecommerce/conf/locale/ta/LC_MESSAGES/django.po index e4495aabd66..7a9d85db480 100644 --- a/ecommerce/conf/locale/ta/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ta/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Uma A, 2022\n" -"Language-Team: Tamil (http://www.transifex.com/open-edx/edx-platform/language/ta/)\n" +"Language-Team: Tamil (http://app.transifex.com/open-edx/edx-platform/language/ta/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ta/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ta/LC_MESSAGES/djangojs.mo index c99c9429c7e..a5af7c70c45 100644 Binary files a/ecommerce/conf/locale/ta/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ta/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ta/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ta/LC_MESSAGES/djangojs.po index 91d282092d8..51b150c212f 100644 --- a/ecommerce/conf/locale/ta/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ta/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Tamil (http://www.transifex.com/open-edx/edx-platform/language/ta/)\n" +"Language-Team: Tamil (http://app.transifex.com/open-edx/edx-platform/language/ta/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/te/LC_MESSAGES/django.mo b/ecommerce/conf/locale/te/LC_MESSAGES/django.mo index 2ec2d4ad4cf..a70e8b9089e 100644 Binary files a/ecommerce/conf/locale/te/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/te/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/te/LC_MESSAGES/django.po b/ecommerce/conf/locale/te/LC_MESSAGES/django.po index 91e58c4741c..c5ce4034b42 100644 --- a/ecommerce/conf/locale/te/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/te/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Telugu (http://www.transifex.com/open-edx/edx-platform/language/te/)\n" +"Language-Team: Telugu (http://app.transifex.com/open-edx/edx-platform/language/te/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/te/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/te/LC_MESSAGES/djangojs.mo index 68c59ce1561..dc96cbb999e 100644 Binary files a/ecommerce/conf/locale/te/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/te/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/te/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/te/LC_MESSAGES/djangojs.po index b69a407a5cc..4b2377d5f9f 100644 --- a/ecommerce/conf/locale/te/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/te/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Telugu (http://www.transifex.com/open-edx/edx-platform/language/te/)\n" +"Language-Team: Telugu (http://app.transifex.com/open-edx/edx-platform/language/te/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/tg/LC_MESSAGES/django.mo b/ecommerce/conf/locale/tg/LC_MESSAGES/django.mo index 64054889303..f054481c1ea 100644 Binary files a/ecommerce/conf/locale/tg/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/tg/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/tg/LC_MESSAGES/django.po b/ecommerce/conf/locale/tg/LC_MESSAGES/django.po index cb0c58d0cd8..1fe7265d638 100644 --- a/ecommerce/conf/locale/tg/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/tg/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Tajik (http://www.transifex.com/open-edx/edx-platform/language/tg/)\n" +"Language-Team: Tajik (http://app.transifex.com/open-edx/edx-platform/language/tg/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/tg/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/tg/LC_MESSAGES/djangojs.mo index 0415bfb3fea..b48fcfdc5c7 100644 Binary files a/ecommerce/conf/locale/tg/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/tg/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/tg/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/tg/LC_MESSAGES/djangojs.po index d907a38b73c..8a3b63d5a0b 100644 --- a/ecommerce/conf/locale/tg/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/tg/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Tajik (http://www.transifex.com/open-edx/edx-platform/language/tg/)\n" +"Language-Team: Tajik (http://app.transifex.com/open-edx/edx-platform/language/tg/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/th/LC_MESSAGES/django.mo b/ecommerce/conf/locale/th/LC_MESSAGES/django.mo index 0ca93b8cc5f..a84b1970d23 100644 Binary files a/ecommerce/conf/locale/th/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/th/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/th/LC_MESSAGES/django.po b/ecommerce/conf/locale/th/LC_MESSAGES/django.po index 0ebdc3c370b..bd9bf1e6de8 100644 --- a/ecommerce/conf/locale/th/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/th/LC_MESSAGES/django.po @@ -17,10 +17,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Chanamon Chaiyakul , 2016\n" -"Language-Team: Thai (http://www.transifex.com/open-edx/edx-platform/language/th/)\n" +"Language-Team: Thai (http://app.transifex.com/open-edx/edx-platform/language/th/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -49,332 +49,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "ชื่อและนามสกุล" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "วันที่/เวลาล่าสุดที่เข้าสู่ระบบสามารถใช้งานได้กับผลิตภัณฑ์นี้" @@ -384,43 +384,43 @@ msgstr "วันที่/เวลาล่าสุดที่เข้า msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -482,150 +482,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -795,41 +805,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "ผลิตภัณฑ์ต้องมีราคา" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "ผลิตภัณฑ์จำเป็นต้องระบุรหัสการยืนยัน" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "ระดับสินค้าที่ไม่ถูกต้อง [{product_class}] ได้รับการร้องขอ" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -837,39 +847,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -907,84 +918,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1001,7 +1012,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1010,44 +1021,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "วันที่/เวลาล่าสุดที่ผลิตภัณฑ์นี้สามารถชำระเงินได้" @@ -1113,6 +1124,20 @@ msgstr "สถานะ" msgid "Failed to retrieve enrollment data." msgstr "ล้มเหลวในการดึงข้อมูลการลงทะเบียน" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1145,23 +1170,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1172,35 +1197,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1250,7 +1275,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "พันธมิตร" @@ -1259,14 +1284,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1297,7 +1338,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1379,11 +1420,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1428,7 +1469,7 @@ msgid "Line Credit (excl. tax)" msgstr "วงเงิน (ไม่รวมภาษี)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1483,7 +1524,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1819,7 +1860,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1832,38 +1873,38 @@ msgstr "" msgid "Dashboard" msgstr "แดชบอร์ด" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "แคตตาล็อก" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "ผลิตภัณฑ์" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "ประเภทผลิตภัณฑ์" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "หมวดหมู่" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "ช่วง" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "การแจ้งเตือนหุ้นต่ำ" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "การชำระเงิน" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1875,11 +1916,11 @@ msgstr "การชำระเงิน" msgid "Orders" msgstr "รายการที่สั่ง" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "สถิติ" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1890,25 +1931,25 @@ msgstr "สถิติ" msgid "Refunds" msgstr "การคืนเงิน" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "ลูกค้า" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "ขอการแจ้งเตือนหุ้น" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "รายงาน" @@ -2025,89 +2066,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "ปริมาณ:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2117,11 +2167,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/th/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/th/LC_MESSAGES/djangojs.mo index 47ed2d62c60..068a4802615 100644 Binary files a/ecommerce/conf/locale/th/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/th/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/th/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/th/LC_MESSAGES/djangojs.po index 3b82c859df5..19395976a04 100644 --- a/ecommerce/conf/locale/th/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/th/LC_MESSAGES/djangojs.po @@ -16,10 +16,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Pornchai TummarATTAnanonT , 2015-2016\n" -"Language-Team: Thai (http://www.transifex.com/open-edx/edx-platform/language/th/)\n" +"Language-Team: Thai (http://app.transifex.com/open-edx/edx-platform/language/th/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -318,11 +318,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -464,7 +464,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/th_TH/LC_MESSAGES/django.mo b/ecommerce/conf/locale/th_TH/LC_MESSAGES/django.mo index d114d894626..363a2d31b81 100644 Binary files a/ecommerce/conf/locale/th_TH/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/th_TH/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/th_TH/LC_MESSAGES/django.po b/ecommerce/conf/locale/th_TH/LC_MESSAGES/django.po index a1ed0d8fee4..b29617ebf74 100644 --- a/ecommerce/conf/locale/th_TH/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/th_TH/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-14 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Thai (Thailand) (http://www.transifex.com/open-edx/edx-platform/language/th_TH/)\n" +"Language-Team: Thai (Thailand) (http://app.transifex.com/open-edx/edx-platform/language/th_TH/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,325 +45,325 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" #: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:256 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:259 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:693 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:696 -#: ecommerce/extensions/api/serializers.py:739 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:703 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:735 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:806 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:838 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1508 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1509 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1976 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2031 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2049 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2080 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,39 +1017,39 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/th_TH/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/th_TH/LC_MESSAGES/djangojs.mo index 3d6ac804fe6..c81337a2ac8 100644 Binary files a/ecommerce/conf/locale/th_TH/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/th_TH/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/th_TH/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/th_TH/LC_MESSAGES/djangojs.po index 8ece08cf444..229d97790d2 100644 --- a/ecommerce/conf/locale/th_TH/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/th_TH/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-14 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Thai (Thailand) (http://www.transifex.com/open-edx/edx-platform/language/th_TH/)\n" +"Language-Team: Thai (Thailand) (http://app.transifex.com/open-edx/edx-platform/language/th_TH/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/tr/LC_MESSAGES/django.mo b/ecommerce/conf/locale/tr/LC_MESSAGES/django.mo index 23a304e3757..b97c1f7bdf7 100644 Binary files a/ecommerce/conf/locale/tr/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/tr/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/tr/LC_MESSAGES/django.po b/ecommerce/conf/locale/tr/LC_MESSAGES/django.po index 3125c59d218..719d1722b01 100644 --- a/ecommerce/conf/locale/tr/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/tr/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Turkish (http://www.transifex.com/open-edx/edx-platform/language/tr/)\n" +"Language-Team: Turkish (http://app.transifex.com/open-edx/edx-platform/language/tr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/tr/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/tr/LC_MESSAGES/djangojs.mo index b1f7bbea200..4e8905104ab 100644 Binary files a/ecommerce/conf/locale/tr/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/tr/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/tr/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/tr/LC_MESSAGES/djangojs.po index e17c770c916..f3015f22e4e 100644 --- a/ecommerce/conf/locale/tr/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/tr/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Turkish (http://www.transifex.com/open-edx/edx-platform/language/tr/)\n" +"Language-Team: Turkish (http://app.transifex.com/open-edx/edx-platform/language/tr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/tr_TR/LC_MESSAGES/django.mo b/ecommerce/conf/locale/tr_TR/LC_MESSAGES/django.mo index 49bf8b09a2a..cf9f8595e0d 100644 Binary files a/ecommerce/conf/locale/tr_TR/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/tr_TR/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/tr_TR/LC_MESSAGES/django.po b/ecommerce/conf/locale/tr_TR/LC_MESSAGES/django.po index 705761b1408..98967a58978 100644 --- a/ecommerce/conf/locale/tr_TR/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/tr_TR/LC_MESSAGES/django.po @@ -10,7 +10,7 @@ # Translators: # Translators: # Adem Özgür , 2015 -# Ali Işıngör , 2017-2022 +# Ali Işıngör , 2017-2023 # ali selek , 2015 # Ege , 2020 # Emrah Emirtekin , 2015 @@ -19,15 +19,15 @@ # Kubilay , 2015 # Muha Aliss , 2015 # Nil Enkavi , 2018 -# Phil Shiu , 2022 +# Phillip Shiu , 2022 msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" -"Last-Translator: Ali Işıngör , 2017-2022\n" -"Language-Team: Turkish (Turkey) (http://www.transifex.com/open-edx/edx-platform/language/tr_TR/)\n" +"Last-Translator: Ali Işıngör , 2017-2023\n" +"Language-Team: Turkish (Turkey) (http://app.transifex.com/open-edx/edx-platform/language/tr_TR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -56,332 +56,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "Veritabanındaki yük nedeniyle kullanıcı yönetimi devre dışı bırakıldı. Bu işlev {switch_name} anahtarı açılarak geri getirilebilir. Bu anahtarı yeniden etkinleştirirken dikkatli olun!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "Özellleştirilmiş site/mikrosite için LMS taban url" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "Bu sitenin LMS arayüzünün kök dizini (örn: https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "Özelleştirilmiş site teması yolu" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "Ödeme altyapısı" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "Virgüllerle ayrılmış ödeme altyapısı isim listesi: 'cybersource,paypal'" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "İstemci tarafı ödeme altyapısı" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "İstemci tarafı ödemelerinde kullanılacak altyapı" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "OAuth ayarları" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "OAuth backend ayarlarını içeren JSON katarları." -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "Segment anahtarı" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "Segment yazma/API anahtarı." -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "Gönderen e-posta" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "E-postaların gönderildiği adres." -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "Kayıt kodlarını etkinleştir" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "Kayıt kodlarının oluşturulmasını etkinleştir." -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "Ödeme süreçleri destek e-postası" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "Ödeme süreçlerinde destek verecek e-posta iletişim adresi." -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "Ödeme süreçleri destek url" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "Ödeme süreçleri sorunları için URL." -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "UTM Çerez Adı" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "UTM verisini tutan çerezin adı." -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "Satış Ortağı Çerez Adı" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "Satış ortağı verisini tutan çerezin adı." -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "Ücret iadesi e-posta bildirimi gönder" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "SDN kontrolünü etkinleştir" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "Ödeme aşamasında SDN kontrolünü etkinleştir." -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "[Kullanımdan kaldırıldı] ABD Hazinesi SDN API URL" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "[Kullanımdan kaldırıldı] ABD Hazinesi SDN API anahtarı" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "SDN listeleri" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "ABD Hazinesi OFAC denetim listelerinin virgüllerle ayrılmış listesi." -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "Hesap Etkinleştirme Gerektiriyor" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "Kullanıcılar indirim kuponlarını kullanmak için öncelikle hesaplarını etkinleştirmeliler." -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "Optimizely kod parçacığı kaynak URL" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "Bu betik her sayfada yüklenecek." -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "Temel Çerez Alanı" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "Servisler arası paylaşılacak çerezlerin kullanacağı temel çalışma alanı." -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "Ambargo denetimini etkinleştir" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "Ödeme aşamasında ambargo denetimini etkinleştir." -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "Discovery API URL" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "Apple Pay'i Etkinleştir" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "Kısmi Program Teklifini Etkinleştir" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "Hubspot Portalı Gizlilik Anahtarı" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "Hubspot portalı kimlik doğrulaması için gizlilik anahtarı" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "Sepet Sayfası için Mikro Frontend'i Etkinleştir" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "Sunucu tarafı şablonu yerine sepet sayfasının microfrontend uygulamasını kullanın" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "Ödeme Sayfası Microfrontend URL" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "Ödeme Microfrontend Sayfası için URL (Sepet için Microfrontend ayarı etkinleştirildiğinde)" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "soyadı" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "ad" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "Tam Ad" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "LMS kullanıcı kimliği" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "İsim" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "KurumsalMüşteri UUID" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "Kupon mevcut değil." -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "Bu kupon kodu geçerli değil." -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "Bu kupon kodunun süresi dolmuş." -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "[{product}] ürünü satışa açık değil." -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "Bu kupon kodu artık geçerli değil." -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "Bu kupon kodu geçersiz." -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "Bu hediye kartı şu anki alışveriş sepetinizde kullanılamaz." -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "edX'e hoş geldiniz" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "Kurumunuz tarafından oluşturulan eğitimler arasından seçim yaparak öğrenmeye başlayın." -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "Kod sağlanmıyor." -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "SKU sağlanmıyor." -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "Ürün mevcut değil." -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "Bu kupon için uygun şartlara sahip değilsiniz." -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "Bu kupon için uygun Kurumsal Müşteri bulunamadı." -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "{enterprise_customer_name} tarafından sunulan indirim, uygulandı." -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "Bu kupon kodu bu eğitim için geçerli değil. Lütfen başka bir eğitimle deneyin." -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "Bu ürün için doğrulama teslim edilebileceği son tarih / saat." @@ -391,45 +391,45 @@ msgstr "Bu ürün için doğrulama teslim edilebileceği son tarih / saat." msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "{course_id} e-ticaret verilerinin LMS üzerinde yayınlanmasında hata." -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" -msgstr "Gözlemle" +msgstr "Gözlemci" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "Kredi" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Onur" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Profesyonel" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "Onaylanmış" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "Yönetici Eğitimi" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" -msgstr "" +msgstr "Ödenmiş Yönetici Eğitimi" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" -msgstr "" +msgstr "Ödenmemiş Yönetici Eğitimi" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" -msgstr "" +msgstr "Ödenmiş Bootcamp" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" -msgstr "" +msgstr "Ödenmemiş Bootcamp" #: ecommerce/credit/views.py:40 msgid "" @@ -489,152 +489,162 @@ msgid "" "questions." msgstr "Bu kod, e-postanız için geçerli değildir. Lütfen koda atanan doğru e-posta ile oturum açın veya ek sorular için Öğrenim Yöneticinizle iletişime geçin." -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "Kurumsal Müşteri UUID" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "Kurumsal Müşteri Katalog UUID" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "İndirim Türü" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "İndirim Bedeli" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "Sözleşme İndirim Türü" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "Sözleşme İndirimi" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "Ön Ödemeli Fatura Tutarı" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "Salesforce Fırsat Kimliği" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "E-posta Adresleri" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "Teklif kullanım uyarılarını alacak virgülle ayrılmış e-postalar" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "Teklif kullanım e-postalarının sıklığı" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "Bu tekliften yararlanabilecek maksimum kayıt sayısı." -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "Bu teklifle kullanılabilecek maksimum USD dolar tutarı." -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "Bu tekliften faydalanan bir kullanıcı tarafından kullanabilecek maksimum kayıtlanma sayısı." -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "Bu teklif kullanılarak bir kullanıcı tarafından faydalanılabilecek maksimum ABD Doları tutarı." -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "Başlama Tarihi" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "Bitiş Tarihi" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "Kayıt Limiti" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "Rezervasyon Limiti" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "Kullanıcı Başına Kayıt Sınırı" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "Kullanıcı Başına Rezervasyon Sınırı" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "Yeni değerin tüketilen ({offer_enrollments}) değerinden büyük veya ona eşit olduğundan emin olun." -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." +msgstr "Salesforce Fırsat ID'si 18 karakterli alfanümerik olmalı ve 006 ile başlamalı." + +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "Bu değerin 0'dan büyük veya 0'a eşit olduğundan emin olun." -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "Yeni değerin tüketilen ({consumed_discount:.2f}) değerinden büyük veya ona eşit olduğundan emin olun." -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "Verilen e-posta adresi {email} geçerli bir e-posta değil. " -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "Bu Kurumsal ve Katalog kombinasyonu için zaten bir teklif var." -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "Yüzde cinsinden indirimler %100'den fazla olamaz." -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "Bir bitiş tarihi atandığında başlama tarihi de belirlenmeli." -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "Başlama tarihi bitiş tarihinden önce olmalı." -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "Mutlak değer için ondalık sayıdan sonra 2'den fazla basamağa izin verilmez." -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." -msgstr "" +msgstr "Sözleşme indirim tipi mutlak olduğunda bu alan gereklidir." -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." -msgstr "" +msgstr "{} tarafından {} için sağlanan {} türü indirim." #: ecommerce/enterprise/templates/enterprise/enterprise_coupon_app.html:5 msgid "Enterprise Coupon Codes" @@ -800,43 +810,43 @@ msgstr "Sipariş için denediğiniz ürünlerden biri mevcut değil." #: ecommerce/extensions/api/exceptions.py:21 msgid "" "We couldn't find enough information about you to perform the calculation." -msgstr "" +msgstr "Hesaplamayı yapmak için hakkınızda yeterli bilgiyi bulamadık." -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "SÜRESİ DOLDU" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" -msgstr "PASİF" +msgstr "ETKİN DEĞİL" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "AKTİF" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "Ürünler bir sertifika türüne sahip olmak zorunda." -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "Ürünlerin ücreti olmak zorunda." -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "Ürünler, kimlik doğrulamasının gerekli olup olmadığını belirtmelidir." -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "Geçersiz istenen [{product_class}] ürün sınıfı." -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -844,39 +854,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "Kayıt kodu" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "İndirim kodu" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "Geçersiz sipariş numarası ya da {} siparişi mevcut değil." -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "SKU bilgisi mevcut değil." #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "Ürün Çeşit Türü (SKU) [{skus}] numaralı bu ürünler mevcut değil." @@ -888,7 +899,7 @@ msgstr "" #: ecommerce/extensions/api/v2/views/products.py:54 #, python-brace-format msgid "Product API only supports {http_method} for {product_class} products." -msgstr "" +msgstr "Product API'si, yalnızca {product_class} ürünleri için {http_method}'u destekler." #: ecommerce/extensions/api/v2/views/products.py:69 #, python-brace-format @@ -914,84 +925,84 @@ msgstr "" msgid "Text Attribute" msgstr "Metin Özniteliği" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "İhracat kontrolleri nedeniyle, bu eğitime erişmenize şu an için izin veremiyoruz." -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "'{code}' kupon kodu artık geçerli değil." -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "'{code}' kupon kodu etkinleştirilmemiş." -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "'{code}' kupon kodu mevcut değil. {msg}" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "'{code}' kupon kodu bu alışveriş sepeti için geçerli değil." -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." -msgstr "" +msgstr "'{code}' kupon kodu, paket halinde satın alınan bu sepet için geçerli değil." -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "'{code}' kupon kodu sepete eklendi." -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "Sepet, {code} kupon kodu için uygun değil." -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "'{code}' kodu uygulanamadı; veri paylaşımı onayı gerektiriyor." -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "Siparişinizi tamamladıktan sonra panelden ders tarihlerini seçebileceksiniz." -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." -msgstr "" +msgstr "Siparişinizi tamamladıktan sonra, dersin doğrulanmış öğrenci özelliklerine otomatik olarak kaydolacaksınız." -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "Siparişinizi tamamladıktan sonra bu ders için kredi alacaksınız." -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "Siparişinizi tamamladıktan sonra otomatik olarak bu derse kayıt olacaksınız." -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1008,7 +1019,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1017,44 +1028,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "Bu ürünleri zaten satın aldınız" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "Satın alınabilecek ürün yok." -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "miktar başarıyla güncellendi" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." -msgstr "" +msgstr "Sepetiniz güncellenemedi. Lütfen aşağıdaki doğrulama hatalarını düzeltin." -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "'{code}' kupon kodu sepetinize hali hazırda ekli." -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "'{code}' kupon kodu mevcut değil." -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "'%s' numaralı kupon bulunamadı" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "'%s' kupon kodu sepetinizden kaldırıldı." -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "Bu ürünün satın alınabilir son tarih / saat." @@ -1120,6 +1131,20 @@ msgstr "Durum" msgid "Failed to retrieve enrollment data." msgstr "Kayıt verileri alınamadı." +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "Android geri ödemelerinin alınacağı son gün sayısı." + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "Orjinal İşlem Kimliği" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "Gün 3" @@ -1152,23 +1177,23 @@ msgstr "Otomatik" msgid "Manual" msgstr "El ile" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "KurumsalMüşteri Adı" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "KurumsalMüşteriKatalog UUID" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1179,35 +1204,35 @@ msgstr "KurumsalMüşteriKatalog UUID" msgid "Program UUID" msgstr "Program UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "Kullanıcıya gönderilecek e-posta beklemede." -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "Kod başarıyla kullanıcıya atandı." -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "Kullanıcıya gönderilen e-posta geri döndü." -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "E-posta gönderildi." -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "Bu kullanıcı e-posta alabilir" @@ -1257,7 +1282,7 @@ msgstr "Stok kaydı eklemek için lütfen \"Kaydet ve Düzenlemeye Devam Et\"e t msgid "Partner" msgstr "İş Ortağı" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "İş Ortakları" @@ -1266,14 +1291,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "Diners" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "Discover" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "JCB" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "UnionPay" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "Bilinmiyor" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1304,7 +1345,7 @@ msgstr "İşverenim veya başka bir profesyonel kurum adına satın alıyorum" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "Sepetinizi işlemede bir sorun yaşandı. Sayfayı yenileyerek tekrar denemenizi rica ediyoruz." @@ -1372,11 +1413,11 @@ msgstr "Başarısız Paypal müşteri eylemlerini tekrar deneme sayısı (ör. #: ecommerce/extensions/payment/models.py:112 msgid "More than 10 digits before the decimal not allowed for fixed value." -msgstr "" +msgstr "Sabit değer için ondalıktan önce 10 basamaktan fazlasına izin verilmez." #: ecommerce/extensions/payment/models.py:118 msgid "More than 2 digits after the decimal not allowed for fixed value." -msgstr "" +msgstr "Sabit değer için ondalıktan sonra 2 basamaktan fazlasına izin verilmez." #: ecommerce/extensions/payment/models.py:126 msgid "Percentage greater than 100 not allowed." @@ -1386,11 +1427,11 @@ msgstr "Yüzde cinsinden oran 100'den yüksek olamaz." #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "işlem reddedildi" @@ -1402,7 +1443,7 @@ msgid "" "Refund administration has been disabled due to the load on the database. " "This functionality can be restored by activating the {switch_name} Waffle " "switch. Be careful when re-activating this switch!" -msgstr "" +msgstr "Veritabanındaki yük nedeniyle iade yönetimi devre dışı bırakıldı. Bu işlev {switch_name} anahtarı açılarak geri getirilebilir. Bu anahtarı yeniden etkinleştirirken dikkatli olun!" #: ecommerce/extensions/refund/models.py:67 msgid "Order" @@ -1435,7 +1476,7 @@ msgid "Line Credit (excl. tax)" msgstr "Kredi Limiti (vergi hariç)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1490,7 +1531,7 @@ msgstr "Mahsuplaşıldı" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1515,7 +1556,7 @@ msgstr " % {percentage}" #: ecommerce/extensions/voucher/tests/test_utils.py:544 #: ecommerce/extensions/voucher/utils.py:78 msgid "Inactive" -msgstr "Pasif" +msgstr "Etkin değil" #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:192 @@ -1826,7 +1867,7 @@ msgstr "UTM İçerik" msgid "UTM Created At" msgstr "UTM Oluşturma Zamanı" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1839,38 +1880,38 @@ msgstr "UTM Oluşturma Zamanı" msgid "Dashboard" msgstr "Ana Panel" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "Katalog" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "Ürünler" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "Ürün Tipleri" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "Kategoriler" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "Aralıklar" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "Düşük stok alarmı" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "Tamamlanma" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1882,11 +1923,11 @@ msgstr "Tamamlanma" msgid "Orders" msgstr "Siparişler" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "İstatistikler" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1897,25 +1938,25 @@ msgstr "İstatistikler" msgid "Refunds" msgstr "İadeler" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "Müşteriler" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "Stok alarm istekleri" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "Teklifler" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "Hediye Kartları" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "Raporlar" @@ -2032,89 +2073,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format msgid "" -"Your order is complete. If you need a receipt, you can print this page." +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:68 +msgid "" +"Your order is complete. If you need a receipt, you can print this page." +msgstr "Siparişiniz tamamlandı. Bir makbuza ihtiyacınız varsa, bu sayfayı yazdırabilirsiniz." + +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "Sipariş Numarası:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "Ödeme Yöntemi:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "Sipariş Tarihi:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "Sipariş Bilgisi" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "Açıklama" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "Ürün Fiyatı" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "Adet:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "Açıklama:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "Ürün Fiyatı:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "Alt toplam" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "%(voucher_discount_amount)s indirimi" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "%(enterprise_name)s tarafından sunulan %(type)s indirim türü" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "İlk yükseltme için indirim oranı" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "%(type)s indirim türü sunuluyor." -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "%(enterprise_name)s katkılarıyla." -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "Toplam" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "Eğitim Kredinizi Alın" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2124,11 +2174,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "Ana panele git" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "Yeni dersler bul" @@ -2538,7 +2588,7 @@ msgstr "Kupon kodunu uygula" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:164 #, python-format msgid "Checkout with %(title)s" -msgstr "" +msgstr "%(title)s ile öde" #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:166 msgid "Checkout" @@ -2671,7 +2721,7 @@ msgstr "Merhaba %(full_name)s," msgid "" "Thank you for purchasing %(course_title)s. A charge will appear on your " "credit or debit card statement with a company name of \"%(platform_name)s\"." -msgstr "" +msgstr "%(course_title)s dersini satın aldığınız için teşekkür ederiz. Kredi veya banka kartı ekstrenizde %(platform_name)s şirket adıyla bir ödeme görünecek." #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.html:13 #: ecommerce/templates/oscar/communication/emails/commtype_course_purchased_body.txt:8 @@ -2773,7 +2823,7 @@ msgstr "" msgid "" "To explore other credit-eligible courses, visit the %(platform_name)s " "website. We add new courses frequently!" -msgstr "" +msgstr "Diğer krediye uygun dersleri keşfetmek için %(platform_name)s web sitesini ziyaret edin. Sık sık yeni dersler ekliyoruz!" #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.html:74 #: ecommerce/templates/oscar/communication/emails/commtype_credit_receipt_body.txt:15 @@ -2827,7 +2877,7 @@ msgstr "Kurumsal İçin" msgid "" "Thank you for purchasing access to %(course_name)s. Let's get your group " "ready to learn with edX:" -msgstr "" +msgstr "%(course_name)s dersine erişimi satın aldığınız için teşekkür ederiz. Grubunuzu edX ile öğrenmeye hazırlayalım:" #: ecommerce/templates/oscar/communication/emails/commtype_order_with_csv_body.html:29 #, python-brace-format diff --git a/ecommerce/conf/locale/tr_TR/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/tr_TR/LC_MESSAGES/djangojs.mo index 9177723864f..bbbf4188eda 100644 Binary files a/ecommerce/conf/locale/tr_TR/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/tr_TR/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/tr_TR/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/tr_TR/LC_MESSAGES/djangojs.po index 386e5d06f80..428a1ff6ac5 100644 --- a/ecommerce/conf/locale/tr_TR/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/tr_TR/LC_MESSAGES/djangojs.po @@ -21,10 +21,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Ali Işıngör , 2017-2021\n" -"Language-Team: Turkish (Turkey) (http://www.transifex.com/open-edx/edx-platform/language/tr_TR/)\n" +"Language-Team: Turkish (Turkey) (http://app.transifex.com/open-edx/edx-platform/language/tr_TR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -323,11 +323,11 @@ msgstr "Kayıt Kodu" msgid "Discount Code" msgstr "İndirim kodu" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "Değişiklikleri Kaydet" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "Kupon Oluştur" @@ -469,7 +469,7 @@ msgstr "Oturum türü" msgid "Can be used multiple times by one customer" msgstr "Bir müşteri tarafından çok kez kullanılabilir" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "Oluştur ve Eklemeye Devam Et" diff --git a/ecommerce/conf/locale/uk/LC_MESSAGES/django.mo b/ecommerce/conf/locale/uk/LC_MESSAGES/django.mo index dd914eeede2..138db2f49a7 100644 Binary files a/ecommerce/conf/locale/uk/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/uk/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/uk/LC_MESSAGES/django.po b/ecommerce/conf/locale/uk/LC_MESSAGES/django.po index 667cee2c102..5b29f94d8fa 100644 --- a/ecommerce/conf/locale/uk/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/uk/LC_MESSAGES/django.po @@ -20,10 +20,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Danylo Shcherbak , 2020\n" -"Language-Team: Ukrainian (http://www.transifex.com/open-edx/edx-platform/language/uk/)\n" +"Language-Team: Ukrainian (http://app.transifex.com/open-edx/edx-platform/language/uk/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -52,332 +52,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "Ім'я" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "Вітаємо на edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -387,43 +387,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "Безкоштовне прослуховування" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "Честь" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "Професійний" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -485,150 +485,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -798,41 +808,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -840,39 +850,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -910,84 +921,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1004,7 +1015,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1013,44 +1024,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1116,6 +1127,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1148,23 +1173,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1175,35 +1200,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1253,7 +1278,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1262,14 +1287,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1300,7 +1341,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "Виникла проблема з завантаженням вашої корзини. Оновіть сторінку, щоб повторити спробу." @@ -1382,11 +1423,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1431,7 +1472,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1486,7 +1527,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1822,7 +1863,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1835,38 +1876,38 @@ msgstr "" msgid "Dashboard" msgstr "Панель управління" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1878,11 +1919,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1893,25 +1934,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2028,89 +2069,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2120,11 +2170,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/uk/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/uk/LC_MESSAGES/djangojs.mo index d350be8d2d6..ae5043d52fc 100644 Binary files a/ecommerce/conf/locale/uk/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/uk/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/uk/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/uk/LC_MESSAGES/djangojs.po index 23ccb5b6a5e..8089d9c585f 100644 --- a/ecommerce/conf/locale/uk/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/uk/LC_MESSAGES/djangojs.po @@ -22,10 +22,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Danylo Shcherbak , 2020\n" -"Language-Team: Ukrainian (http://www.transifex.com/open-edx/edx-platform/language/uk/)\n" +"Language-Team: Ukrainian (http://app.transifex.com/open-edx/edx-platform/language/uk/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -324,11 +324,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -470,7 +470,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/uk_UA/LC_MESSAGES/django.mo b/ecommerce/conf/locale/uk_UA/LC_MESSAGES/django.mo index 62648ca1504..5dba169d89f 100644 Binary files a/ecommerce/conf/locale/uk_UA/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/uk_UA/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/uk_UA/LC_MESSAGES/django.po b/ecommerce/conf/locale/uk_UA/LC_MESSAGES/django.po index d718fd3053e..0e530e3052f 100644 --- a/ecommerce/conf/locale/uk_UA/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/uk_UA/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Ukrainian (Ukraine) (http://www.transifex.com/open-edx/edx-platform/language/uk_UA/)\n" +"Language-Team: Ukrainian (Ukraine) (http://app.transifex.com/open-edx/edx-platform/language/uk_UA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/uk_UA/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/uk_UA/LC_MESSAGES/djangojs.mo index 5a6c25f21b0..bd3469b5027 100644 Binary files a/ecommerce/conf/locale/uk_UA/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/uk_UA/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/uk_UA/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/uk_UA/LC_MESSAGES/djangojs.po index fb478ea1c0e..fcad1ecc86f 100644 --- a/ecommerce/conf/locale/uk_UA/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/uk_UA/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Ukrainian (Ukraine) (http://www.transifex.com/open-edx/edx-platform/language/uk_UA/)\n" +"Language-Team: Ukrainian (Ukraine) (http://app.transifex.com/open-edx/edx-platform/language/uk_UA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/ur/LC_MESSAGES/django.mo b/ecommerce/conf/locale/ur/LC_MESSAGES/django.mo index d17cc041e2d..29281f9bba4 100644 Binary files a/ecommerce/conf/locale/ur/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/ur/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/ur/LC_MESSAGES/django.po b/ecommerce/conf/locale/ur/LC_MESSAGES/django.po index 411f2c80e1e..b6f449b6e11 100644 --- a/ecommerce/conf/locale/ur/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/ur/LC_MESSAGES/django.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Ahmad Aziz , 2022\n" -"Language-Team: Urdu (http://www.transifex.com/open-edx/edx-platform/language/ur/)\n" +"Language-Team: Urdu (http://app.transifex.com/open-edx/edx-platform/language/ur/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -46,332 +46,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -381,43 +381,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -479,150 +479,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -792,41 +802,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -834,39 +844,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -904,84 +915,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -998,7 +1009,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1007,44 +1018,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1110,6 +1121,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1142,23 +1167,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1169,35 +1194,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1247,7 +1272,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1256,14 +1281,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1294,7 +1335,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1376,11 +1417,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1425,7 +1466,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1480,7 +1521,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1816,7 +1857,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1829,38 +1870,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1872,11 +1913,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1887,25 +1928,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2022,89 +2063,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2114,11 +2164,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/ur/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/ur/LC_MESSAGES/djangojs.mo index 4989747609e..065be0890e4 100644 Binary files a/ecommerce/conf/locale/ur/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/ur/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/ur/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/ur/LC_MESSAGES/djangojs.po index d16b3ef34e3..5471b3b19e7 100644 --- a/ecommerce/conf/locale/ur/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/ur/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Urdu (http://www.transifex.com/open-edx/edx-platform/language/ur/)\n" +"Language-Team: Urdu (http://app.transifex.com/open-edx/edx-platform/language/ur/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/uz/LC_MESSAGES/django.mo b/ecommerce/conf/locale/uz/LC_MESSAGES/django.mo index c872cc28dc1..b8a0235588c 100644 Binary files a/ecommerce/conf/locale/uz/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/uz/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/uz/LC_MESSAGES/django.po b/ecommerce/conf/locale/uz/LC_MESSAGES/django.po index b4da7209b1f..d97b8bdc8d1 100644 --- a/ecommerce/conf/locale/uz/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/uz/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Uzbek (http://www.transifex.com/open-edx/edx-platform/language/uz/)\n" +"Language-Team: Uzbek (http://app.transifex.com/open-edx/edx-platform/language/uz/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/uz/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/uz/LC_MESSAGES/djangojs.mo index f7e306f8496..df90db6355a 100644 Binary files a/ecommerce/conf/locale/uz/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/uz/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/uz/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/uz/LC_MESSAGES/djangojs.po index 46ceb809ff7..bbde156f8be 100644 --- a/ecommerce/conf/locale/uz/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/uz/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Uzbek (http://www.transifex.com/open-edx/edx-platform/language/uz/)\n" +"Language-Team: Uzbek (http://app.transifex.com/open-edx/edx-platform/language/uz/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/vi/LC_MESSAGES/django.mo b/ecommerce/conf/locale/vi/LC_MESSAGES/django.mo index f0801f8f0c9..c1e28c98f3c 100644 Binary files a/ecommerce/conf/locale/vi/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/vi/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/vi/LC_MESSAGES/django.po b/ecommerce/conf/locale/vi/LC_MESSAGES/django.po index a14331df411..a4199c35cff 100644 --- a/ecommerce/conf/locale/vi/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/vi/LC_MESSAGES/django.po @@ -19,10 +19,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Lam Nguyen , 2020\n" -"Language-Team: Vietnamese (http://www.transifex.com/open-edx/edx-platform/language/vi/)\n" +"Language-Team: Vietnamese (http://app.transifex.com/open-edx/edx-platform/language/vi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -51,332 +51,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -386,43 +386,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -484,150 +484,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -797,41 +807,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -839,39 +849,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -909,84 +920,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1003,7 +1014,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1012,44 +1023,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1115,6 +1126,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1147,23 +1172,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1174,35 +1199,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1252,7 +1277,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1261,14 +1286,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1299,7 +1340,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1381,11 +1422,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1430,7 +1471,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1485,7 +1526,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1821,7 +1862,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1834,38 +1875,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1877,11 +1918,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1892,25 +1933,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2027,89 +2068,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2119,11 +2169,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/vi/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/vi/LC_MESSAGES/djangojs.mo index eaf00225758..cce3bb63c33 100644 Binary files a/ecommerce/conf/locale/vi/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/vi/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/vi/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/vi/LC_MESSAGES/djangojs.po index 0142d97a01f..74733355340 100644 --- a/ecommerce/conf/locale/vi/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/vi/LC_MESSAGES/djangojs.po @@ -17,10 +17,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: h4cl3s , 2021\n" -"Language-Team: Vietnamese (http://www.transifex.com/open-edx/edx-platform/language/vi/)\n" +"Language-Team: Vietnamese (http://app.transifex.com/open-edx/edx-platform/language/vi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -319,11 +319,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -465,7 +465,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/vi_VN/LC_MESSAGES/django.mo b/ecommerce/conf/locale/vi_VN/LC_MESSAGES/django.mo index 688b8bf4adb..dad46bdb037 100644 Binary files a/ecommerce/conf/locale/vi_VN/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/vi_VN/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/vi_VN/LC_MESSAGES/django.po b/ecommerce/conf/locale/vi_VN/LC_MESSAGES/django.po index 8194b109387..0358fd4f200 100644 --- a/ecommerce/conf/locale/vi_VN/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/vi_VN/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Vietnamese (Viet Nam) (http://www.transifex.com/open-edx/edx-platform/language/vi_VN/)\n" +"Language-Team: Vietnamese (Viet Nam) (http://app.transifex.com/open-edx/edx-platform/language/vi_VN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/vi_VN/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/vi_VN/LC_MESSAGES/djangojs.mo index 29949605ed1..134a6618382 100644 Binary files a/ecommerce/conf/locale/vi_VN/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/vi_VN/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/vi_VN/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/vi_VN/LC_MESSAGES/djangojs.po index 6b0c9055e95..eabce106004 100644 --- a/ecommerce/conf/locale/vi_VN/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/vi_VN/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Vietnamese (Viet Nam) (http://www.transifex.com/open-edx/edx-platform/language/vi_VN/)\n" +"Language-Team: Vietnamese (Viet Nam) (http://app.transifex.com/open-edx/edx-platform/language/vi_VN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/django.mo b/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/django.mo index 8985e3d4ad3..c774677f122 100644 Binary files a/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/django.po b/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/django.po index e92df1b8381..3cdff7002d2 100644 --- a/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Chinese Simplified (http://www.transifex.com/open-edx/edx-platform/language/zh-Hans/)\n" +"Language-Team: Chinese Simplified (http://app.transifex.com/open-edx/edx-platform/language/zh-Hans/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/djangojs.mo index 046f5ab6cf3..2ec44737454 100644 Binary files a/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/djangojs.po index 954337cc051..aa9272f330d 100644 --- a/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/zh-Hans/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Chinese Simplified (http://www.transifex.com/open-edx/edx-platform/language/zh-Hans/)\n" +"Language-Team: Chinese Simplified (http://app.transifex.com/open-edx/edx-platform/language/zh-Hans/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/zh/LC_MESSAGES/django.mo b/ecommerce/conf/locale/zh/LC_MESSAGES/django.mo index 97f8023a54c..347b032df15 100644 Binary files a/ecommerce/conf/locale/zh/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/zh/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/zh/LC_MESSAGES/django.po b/ecommerce/conf/locale/zh/LC_MESSAGES/django.po index 57206db5200..14535832ef1 100644 --- a/ecommerce/conf/locale/zh/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/zh/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Chinese (http://www.transifex.com/open-edx/edx-platform/language/zh/)\n" +"Language-Team: Chinese (http://app.transifex.com/open-edx/edx-platform/language/zh/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/zh/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/zh/LC_MESSAGES/djangojs.mo index 60a1f558caf..cb2850be0da 100644 Binary files a/ecommerce/conf/locale/zh/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/zh/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/zh/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/zh/LC_MESSAGES/djangojs.po index f25a150c2ee..6438f73acd9 100644 --- a/ecommerce/conf/locale/zh/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/zh/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Chinese (http://www.transifex.com/open-edx/edx-platform/language/zh/)\n" +"Language-Team: Chinese (http://app.transifex.com/open-edx/edx-platform/language/zh/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/django.mo b/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/django.mo index 942a3f71e61..711de8737f0 100644 Binary files a/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/django.po b/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/django.po index 28d92dd35d8..c8d4a257637 100644 --- a/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/open-edx/edx-platform/language/zh_CN.GB2312/)\n" +"Language-Team: Chinese (China) (GB2312) (http://app.transifex.com/open-edx/edx-platform/language/zh_CN.GB2312/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/djangojs.mo index 7b571c98ca7..b5186cfcc02 100644 Binary files a/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/djangojs.po index d1ddce74a5b..e48baffca25 100644 --- a/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/zh_CN.GB2312/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/open-edx/edx-platform/language/zh_CN.GB2312/)\n" +"Language-Team: Chinese (China) (GB2312) (http://app.transifex.com/open-edx/edx-platform/language/zh_CN.GB2312/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/zh_CN/LC_MESSAGES/django.mo b/ecommerce/conf/locale/zh_CN/LC_MESSAGES/django.mo index cd8d81fd45f..28d6d4a9ea3 100644 Binary files a/ecommerce/conf/locale/zh_CN/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/zh_CN/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/zh_CN/LC_MESSAGES/django.po b/ecommerce/conf/locale/zh_CN/LC_MESSAGES/django.po index bf90ee72023..849ac2495ef 100644 --- a/ecommerce/conf/locale/zh_CN/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/zh_CN/LC_MESSAGES/django.po @@ -33,10 +33,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: jsgang , 2015-2016,2018,2020\n" -"Language-Team: Chinese (China) (http://www.transifex.com/open-edx/edx-platform/language/zh_CN/)\n" +"Language-Team: Chinese (China) (http://app.transifex.com/open-edx/edx-platform/language/zh_CN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -65,332 +65,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "由于数据库的负载,用户管理功能已停用。可通过激活{switch_name}Waffle按钮修复此功能,重新激活时请谨慎!" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "供自定义站点/微站点使用的LMS基本URL" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "此网站 LMS 的根 URL(例如 https://courses.stage.edx.org)" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "定制站点主题路径" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "付款处理器" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "使用逗号分隔的处理器列表: “cybersource,paypal”" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "客户端支付处理程序" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "用于客户端支付的处理程序" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "OAuth 设置" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "包含了 OAuth 后端设置的 JSON 名称。" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "分段密钥" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "分段写入/API 密钥。" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "来自电子邮件" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "发件人邮箱。" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "启用选课码" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "启用选课码的创建。" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "付款支持邮件" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "用于处理付款支持问题的电子邮件联系人。" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "支付支持URL地址" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "用于处理支付支持问题的URL。" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "UTM Cookie名称" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "储存UTM数据的cookie名称。" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "从属Cookie名称" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "储存从属数据的cookie名称。" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "发送退款邮件通知" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "启用SDN检查" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "在退出时启用SDN检查。" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "SDN列表" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "财政部OFAC列表使用逗号隔开,以便核对。" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "需要激活账号" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "在获得兑换优惠券的权限前,用户需要激活账号。" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "Optimizely片段源URL" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "将在每个页面上载入该脚本。" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "基础Cookie域名" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "用于跨服务共享cookies的基础cookie域名。" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "启用禁令检查" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "在检验时启用禁令检查。" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "Discovery API URL地址" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "启用Apple Pay" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "启用部分课程申请方案" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "启用剩余未报名或未认证课程申请方案应用程序" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "全名" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr " 名字" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "企业客户UUID" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "来自企业服务的企业客户UUID。" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "优惠券不存在。" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "此优惠券码尚未生效。" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "此优惠券码已过期。" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "产品[{product}]不可购买。" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "此优惠券码已无法使用。" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "优惠码无效" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "此优惠凭证不适用于您当前的购物车。" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "欢迎进入edX" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "请从您的所属组织已挑选的课程进行选择并开始学习。" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "未提供选课码。" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "未提供SKU。" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "此产品不存在。" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "您不符合使用此优惠券的资格。" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "无法找到与此优惠券匹配的企业客户。" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "提供的数据共享批准标记无效。" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "您已购买了{course}座席。" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "已经由{enterprise_customer_name}为您打折。" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "此优惠券码对此课程无效,请尝试其他课程。" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "站点" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "本产品认证的提交截止日期/时间" @@ -400,43 +400,43 @@ msgstr "本产品认证的提交截止日期/时间" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "向LMS发布发课程{course_id}的商用数据失败。" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "旁听" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "学分" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "荣誉" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "专业" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "已经过身份认证的" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -498,150 +498,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "企业客户UUID" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "企业客户目录UUID" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "折扣类型" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "折扣值" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "开始日期" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "结束日期" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "已存在企业和目录组合的方案。" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "折扣百分比不能大于100%。" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "若设置结束日期,则必须设置开始日期。" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "开始日期必须早于结束日期。" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -811,41 +821,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "未激活的" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "已激活的" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "产品必须拥有一种证书类型。" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "请务必为产品定价。" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "您需要提供一个课程的UUID以创建课程权限。" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "产品中须明确是否需要用户ID验证。" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "请求的产品类别[{product_class}]无效" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -853,39 +863,40 @@ msgid "" " been saved." msgstr "课程[{course_id}]未发布到LMS,因为[publish_course_modes_to_lms]开关已关闭。为了避免出现无效的最小存货单位,数据未保存。" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "选课码" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "折扣码" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "未提供SKU。" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "不存在带有SKU(s) [{skus}]的产品。" @@ -923,84 +934,84 @@ msgstr "属性类型" msgid "Text Attribute" msgstr "文本属性" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "由于导出限制,您暂时无法访问此课程。" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "点击此处即可自行购买选课" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "点击此处可购买此课程的多个座席" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "优惠券码“{code}”已失效。" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "优惠券码“{code}”未激活。" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "此优惠券码“{code}”在该购物车内无效。" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "优惠券码“{code}”已添加至购物车中。" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "无法使用“{code}'”;需要得到数据共享授权。" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "完成订单后,您便可以在面板上选择课程日期。" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "完成订单后,您将被自动记录在已经过身份认证的课程类别上。" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "完成订单后,您将收到课程学分。" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "完成订单后,您将立即加入此课程。" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1017,7 +1028,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1026,44 +1037,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "{strong_start}是否只为自己购买?{strong_end}{paragraph_start}若是替他人购买,请继续下单。而如果您是学员 {link_start},则请返回{link_end}并直接选课。{paragraph_end}" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "您已购买这些产品" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "无尚可购买的产品。" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "您已将优惠券码“{code}”添加至购物车中。" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "优惠券码“{code}”不存在。" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "购买此产品的截止日期/时间" @@ -1129,6 +1140,20 @@ msgstr "状态" msgid "Failed to retrieve enrollment data." msgstr "无法提取选课数据" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1161,23 +1186,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "来自Discovery服务的课程目录ID" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "企业客户名称" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "企业客户目录UUID" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1188,35 +1213,35 @@ msgstr "企业客户目录UUID" msgid "Program UUID" msgstr "程序UUID" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1266,7 +1291,7 @@ msgstr "单击'Save and Continue Editing'按钮添加新的库存记录。" msgid "Partner" msgstr "合作伙伴" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "合作伙伴" @@ -1275,14 +1300,30 @@ msgid "American Express" msgstr "American Express" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "发现课程" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "MasterCard" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "Visa" @@ -1313,7 +1354,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "获取您的购物车时出现问题,请刷新页面并重试。" @@ -1395,11 +1436,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1444,7 +1485,7 @@ msgid "Line Credit (excl. tax)" msgstr "行信贷 (不含税)" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1499,7 +1540,7 @@ msgstr "已兑换" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1835,7 +1876,7 @@ msgstr "UTM内容" msgid "UTM Created At" msgstr "UTM创建于" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1848,38 +1889,38 @@ msgstr "UTM创建于" msgid "Dashboard" msgstr "主控面板" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "目录" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "产品" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "产品类型" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "类别" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "范围" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "低库存提示" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "实现" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1891,11 +1932,11 @@ msgstr "实现" msgid "Orders" msgstr "订单" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "统计数据" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1906,25 +1947,25 @@ msgstr "统计数据" msgid "Refunds" msgstr "退款" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "客户" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "库存提示请求" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "报价" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "票券" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "报告" @@ -2041,89 +2082,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "订单编号:" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "支付方式:" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "订单日期:" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "订单信息" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "描述" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "项目价格" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "数量:" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "描述:" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "项目价格:" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "小计" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "优惠%(voucher_discount_amount)s" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "由%(enterprise_name)s赠送。" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "共计" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "获取您的课程学分" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2133,11 +2183,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "寻找更多课程" diff --git a/ecommerce/conf/locale/zh_CN/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/zh_CN/LC_MESSAGES/djangojs.mo index 57a2d4e5f3d..a64c425b670 100644 Binary files a/ecommerce/conf/locale/zh_CN/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/zh_CN/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/zh_CN/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/zh_CN/LC_MESSAGES/djangojs.po index 29b4a0c345d..d02fb304a4c 100644 --- a/ecommerce/conf/locale/zh_CN/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/zh_CN/LC_MESSAGES/djangojs.po @@ -21,10 +21,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: ifLab , 2018-2019\n" -"Language-Team: Chinese (China) (http://www.transifex.com/open-edx/edx-platform/language/zh_CN/)\n" +"Language-Team: Chinese (China) (http://app.transifex.com/open-edx/edx-platform/language/zh_CN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -323,11 +323,11 @@ msgstr "选课码" msgid "Discount Code" msgstr "折扣码" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "保存更改" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "创建优惠券" @@ -469,7 +469,7 @@ msgstr "坐席类型" msgid "Can be used multiple times by one customer" msgstr "能被一位顾客使用多次" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/zh_HK/LC_MESSAGES/django.mo b/ecommerce/conf/locale/zh_HK/LC_MESSAGES/django.mo index 54a713c6373..0d8e74eb099 100644 Binary files a/ecommerce/conf/locale/zh_HK/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/zh_HK/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/zh_HK/LC_MESSAGES/django.po b/ecommerce/conf/locale/zh_HK/LC_MESSAGES/django.po index b895ee2de65..e6b67003973 100644 --- a/ecommerce/conf/locale/zh_HK/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/zh_HK/LC_MESSAGES/django.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: edx_transifex_bot \n" -"Language-Team: Chinese (Hong Kong) (http://www.transifex.com/open-edx/edx-platform/language/zh_HK/)\n" +"Language-Team: Chinese (Hong Kong) (http://app.transifex.com/open-edx/edx-platform/language/zh_HK/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -45,332 +45,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -380,43 +380,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -478,150 +478,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -791,41 +801,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -833,39 +843,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -903,84 +914,84 @@ msgstr "" msgid "Text Attribute" msgstr "" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -997,7 +1008,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1006,44 +1017,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1109,6 +1120,20 @@ msgstr "" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1141,23 +1166,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1168,35 +1193,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1246,7 +1271,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "" @@ -1255,14 +1280,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1293,7 +1334,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1375,11 +1416,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "" -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1424,7 +1465,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1479,7 +1520,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1815,7 +1856,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1828,38 +1869,38 @@ msgstr "" msgid "Dashboard" msgstr "" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1871,11 +1912,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1886,25 +1927,25 @@ msgstr "" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "" @@ -2021,89 +2062,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2113,11 +2163,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/zh_HK/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/zh_HK/LC_MESSAGES/djangojs.mo index 0d8eecc1803..ae8377c5f81 100644 Binary files a/ecommerce/conf/locale/zh_HK/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/zh_HK/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/zh_HK/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/zh_HK/LC_MESSAGES/djangojs.po index a4027f13474..2d6265ddf6d 100644 --- a/ecommerce/conf/locale/zh_HK/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/zh_HK/LC_MESSAGES/djangojs.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Transifex Bot <>\n" -"Language-Team: Chinese (Hong Kong) (http://www.transifex.com/open-edx/edx-platform/language/zh_HK/)\n" +"Language-Team: Chinese (Hong Kong) (http://app.transifex.com/open-edx/edx-platform/language/zh_HK/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -315,11 +315,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -461,7 +461,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr "" diff --git a/ecommerce/conf/locale/zh_TW/LC_MESSAGES/django.mo b/ecommerce/conf/locale/zh_TW/LC_MESSAGES/django.mo index 7b4ff64e072..7a3e0d41557 100644 Binary files a/ecommerce/conf/locale/zh_TW/LC_MESSAGES/django.mo and b/ecommerce/conf/locale/zh_TW/LC_MESSAGES/django.mo differ diff --git a/ecommerce/conf/locale/zh_TW/LC_MESSAGES/django.po b/ecommerce/conf/locale/zh_TW/LC_MESSAGES/django.po index 5f96f513782..a64fee3e6f5 100644 --- a/ecommerce/conf/locale/zh_TW/LC_MESSAGES/django.po +++ b/ecommerce/conf/locale/zh_TW/LC_MESSAGES/django.po @@ -25,10 +25,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 01:39+0000\n" "Last-Translator: Xaver Y.R. Chen , 2016,2018\n" -"Language-Team: Chinese (Taiwan) (http://www.transifex.com/open-edx/edx-platform/language/zh_TW/)\n" +"Language-Team: Chinese (Taiwan) (http://app.transifex.com/open-edx/edx-platform/language/zh_TW/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -57,332 +57,332 @@ msgid "" " Be careful when re-activating this switch!" msgstr "" -#: ecommerce/core/models.py:40 +#: ecommerce/core/models.py:41 msgid "LMS base url for custom site/microsite" msgstr "" -#: ecommerce/core/models.py:41 +#: ecommerce/core/models.py:42 msgid "Root URL of this site's LMS (e.g. https://courses.stage.edx.org)" msgstr "" -#: ecommerce/core/models.py:46 +#: ecommerce/core/models.py:47 msgid "Path to custom site theme" msgstr "" -#: ecommerce/core/models.py:53 +#: ecommerce/core/models.py:54 msgid "Payment processors" msgstr "" -#: ecommerce/core/models.py:54 +#: ecommerce/core/models.py:55 msgid "Comma-separated list of processor names: 'cybersource,paypal'" msgstr "" -#: ecommerce/core/models.py:60 +#: ecommerce/core/models.py:61 msgid "Client-side payment processor" msgstr "" -#: ecommerce/core/models.py:61 +#: ecommerce/core/models.py:62 msgid "Processor that will be used for client-side payments" msgstr "" -#: ecommerce/core/models.py:67 +#: ecommerce/core/models.py:68 msgid "OAuth settings" msgstr "" -#: ecommerce/core/models.py:68 +#: ecommerce/core/models.py:69 msgid "JSON string containing OAuth backend settings." msgstr "" -#: ecommerce/core/models.py:74 +#: ecommerce/core/models.py:75 msgid "Segment key" msgstr "" -#: ecommerce/core/models.py:75 +#: ecommerce/core/models.py:76 msgid "Segment write/API key." msgstr "" -#: ecommerce/core/models.py:81 +#: ecommerce/core/models.py:82 msgid "From email" msgstr "" -#: ecommerce/core/models.py:82 +#: ecommerce/core/models.py:83 msgid "Address from which emails are sent." msgstr "" -#: ecommerce/core/models.py:88 +#: ecommerce/core/models.py:89 msgid "Enable enrollment codes" msgstr "" -#: ecommerce/core/models.py:89 +#: ecommerce/core/models.py:90 msgid "Enable the creation of enrollment codes." msgstr "" -#: ecommerce/core/models.py:94 +#: ecommerce/core/models.py:95 msgid "Payment support email" msgstr "" -#: ecommerce/core/models.py:95 +#: ecommerce/core/models.py:96 msgid "Contact email for payment support issues." msgstr "" -#: ecommerce/core/models.py:101 +#: ecommerce/core/models.py:102 msgid "Payment support url" msgstr "付款支援URL" -#: ecommerce/core/models.py:102 +#: ecommerce/core/models.py:103 msgid "URL for payment support issues." msgstr "有關URL的付款支援問題" -#: ecommerce/core/models.py:107 +#: ecommerce/core/models.py:108 msgid "UTM Cookie Name" msgstr "" -#: ecommerce/core/models.py:108 +#: ecommerce/core/models.py:109 msgid "Name of cookie storing UTM data." msgstr "" -#: ecommerce/core/models.py:114 +#: ecommerce/core/models.py:115 msgid "Affiliate Cookie Name" msgstr "" -#: ecommerce/core/models.py:115 +#: ecommerce/core/models.py:116 msgid "Name of cookie storing affiliate data." msgstr "" -#: ecommerce/core/models.py:121 +#: ecommerce/core/models.py:122 msgid "Send refund email notification" msgstr "" -#: ecommerce/core/models.py:126 +#: ecommerce/core/models.py:127 msgid "Enable SDN check" msgstr "" -#: ecommerce/core/models.py:127 +#: ecommerce/core/models.py:128 msgid "Enable SDN check at checkout." msgstr "" -#: ecommerce/core/models.py:131 +#: ecommerce/core/models.py:132 msgid "[Deprecated] US Treasury SDN API URL" msgstr "" -#: ecommerce/core/models.py:136 +#: ecommerce/core/models.py:137 msgid "[Deprecated] US Treasury SDN API key" msgstr "" -#: ecommerce/core/models.py:141 +#: ecommerce/core/models.py:142 msgid "SDN lists" msgstr "" -#: ecommerce/core/models.py:142 +#: ecommerce/core/models.py:143 msgid "A comma-separated list of Treasury OFAC lists to check against." msgstr "" -#: ecommerce/core/models.py:147 +#: ecommerce/core/models.py:148 msgid "Require Account Activation" msgstr "" -#: ecommerce/core/models.py:148 +#: ecommerce/core/models.py:149 msgid "" "Require users to activate their account before allowing them to redeem a " "coupon." msgstr "" -#: ecommerce/core/models.py:152 +#: ecommerce/core/models.py:153 msgid "Optimizely snippet source URL" msgstr "" -#: ecommerce/core/models.py:153 +#: ecommerce/core/models.py:154 msgid "This script will be loaded on every page." msgstr "" -#: ecommerce/core/models.py:158 +#: ecommerce/core/models.py:159 msgid "Base Cookie Domain" msgstr "" -#: ecommerce/core/models.py:159 +#: ecommerce/core/models.py:160 msgid "Base cookie domain used to share cookies across services." msgstr "" -#: ecommerce/core/models.py:165 +#: ecommerce/core/models.py:166 msgid "Enable embargo check" msgstr "" -#: ecommerce/core/models.py:166 +#: ecommerce/core/models.py:167 msgid "Enable embargo check at checkout." msgstr "" -#: ecommerce/core/models.py:170 +#: ecommerce/core/models.py:171 msgid "Discovery API URL" msgstr "" #. Translators: Do not translate "Apple Pay" -#: ecommerce/core/models.py:176 +#: ecommerce/core/models.py:177 msgid "Enable Apple Pay" msgstr "" -#: ecommerce/core/models.py:180 +#: ecommerce/core/models.py:181 msgid "Enable Partial Program Offer" msgstr "" -#: ecommerce/core/models.py:181 +#: ecommerce/core/models.py:182 msgid "" "Enable the application of program offers to remaining unenrolled or " "unverified courses" msgstr "" -#: ecommerce/core/models.py:186 +#: ecommerce/core/models.py:187 msgid "Hubspot Portal Secret Key" msgstr "" -#: ecommerce/core/models.py:187 +#: ecommerce/core/models.py:188 msgid "Secret key for Hubspot portal authentication" msgstr "" -#: ecommerce/core/models.py:192 +#: ecommerce/core/models.py:193 msgid "Enable Microfrontend for Basket Page" msgstr "" -#: ecommerce/core/models.py:193 +#: ecommerce/core/models.py:194 msgid "" "Use the microfrontend implementation of the basket page instead of the " "server-side template" msgstr "" -#: ecommerce/core/models.py:198 +#: ecommerce/core/models.py:199 msgid "Payment Microfrontend URL" msgstr "" -#: ecommerce/core/models.py:199 +#: ecommerce/core/models.py:200 msgid "" "URL for the Payment Microfrontend (used if Enable Microfrontend for Basket " "Page is set)" msgstr "" -#: ecommerce/core/models.py:438 +#: ecommerce/core/models.py:446 msgid "last name" msgstr "" -#: ecommerce/core/models.py:441 +#: ecommerce/core/models.py:449 msgid "first name" msgstr "" -#: ecommerce/core/models.py:442 +#: ecommerce/core/models.py:450 msgid "Full Name" msgstr "全名" -#: ecommerce/core/models.py:448 +#: ecommerce/core/models.py:456 msgid "LMS user id" msgstr "" -#: ecommerce/core/models.py:702 ecommerce/extensions/basket/models.py:130 +#: ecommerce/core/models.py:710 ecommerce/extensions/basket/models.py:130 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:54 #: ecommerce/templates/oscar/dashboard/offers/summary.html:10 msgid "Name" msgstr "名稱" -#: ecommerce/core/models.py:704 ecommerce/extensions/offer/models.py:581 +#: ecommerce/core/models.py:712 ecommerce/extensions/offer/models.py:582 msgid "EnterpriseCustomer UUID" msgstr "" -#: ecommerce/core/models.py:705 ecommerce/extensions/offer/models.py:451 -#: ecommerce/extensions/offer/models.py:675 -#: ecommerce/extensions/offer/models.py:741 +#: ecommerce/core/models.py:713 ecommerce/extensions/offer/models.py:452 +#: ecommerce/extensions/offer/models.py:676 +#: ecommerce/extensions/offer/models.py:742 msgid "UUID for an EnterpriseCustomer from the Enterprise Service." msgstr "" -#: ecommerce/coupons/views.py:72 ecommerce/coupons/views.py:121 +#: ecommerce/coupons/views.py:76 ecommerce/coupons/views.py:125 msgid "Coupon does not exist." msgstr "" -#: ecommerce/coupons/views.py:77 +#: ecommerce/coupons/views.py:81 msgid "This coupon code is not yet valid." msgstr "" -#: ecommerce/coupons/views.py:79 +#: ecommerce/coupons/views.py:83 msgid "This coupon code has expired." msgstr "" -#: ecommerce/coupons/views.py:91 +#: ecommerce/coupons/views.py:95 #, python-brace-format msgid "Product [{product}] not available for purchase." msgstr "" -#: ecommerce/coupons/views.py:96 +#: ecommerce/coupons/views.py:100 msgid "This coupon code is no longer available." msgstr "" -#: ecommerce/coupons/views.py:116 +#: ecommerce/coupons/views.py:120 msgid "This coupon code is invalid." msgstr "" -#: ecommerce/coupons/views.py:123 +#: ecommerce/coupons/views.py:127 msgid "The voucher is not applicable to your current basket." msgstr "" -#: ecommerce/coupons/views.py:133 +#: ecommerce/coupons/views.py:137 msgid "Welcome to edX" msgstr "" -#: ecommerce/coupons/views.py:134 +#: ecommerce/coupons/views.py:138 msgid "" "Please choose from the courses selected by your organization to start " "learning." msgstr "" -#: ecommerce/coupons/views.py:164 +#: ecommerce/coupons/views.py:168 msgid "Code not provided." msgstr "" -#: ecommerce/coupons/views.py:166 +#: ecommerce/coupons/views.py:170 msgid "SKU not provided." msgstr "" -#: ecommerce/coupons/views.py:177 +#: ecommerce/coupons/views.py:181 msgid "The product does not exist." msgstr "" -#: ecommerce/coupons/views.py:191 +#: ecommerce/coupons/views.py:195 msgid "You are not eligible to use this coupon." msgstr "您不符合使用此優惠券的資格。" -#: ecommerce/coupons/views.py:206 +#: ecommerce/coupons/views.py:210 msgid "Couldn't find a matching Enterprise Customer for this coupon." msgstr "" -#: ecommerce/coupons/views.py:214 +#: ecommerce/coupons/views.py:218 msgid "" "This coupon is not valid for purchasing a program. Try using this on an " "individual course in the program. If you need assistance, contact edX " "support." msgstr "" -#: ecommerce/coupons/views.py:241 +#: ecommerce/coupons/views.py:245 msgid "Invalid data sharing consent token provided." msgstr "" -#: ecommerce/coupons/views.py:261 +#: ecommerce/coupons/views.py:265 #, python-brace-format msgid "You have already purchased {course} seat." msgstr "" -#: ecommerce/coupons/views.py:285 +#: ecommerce/coupons/views.py:289 #, python-brace-format msgid "A discount has been applied, courtesy of {enterprise_customer_name}." msgstr "" -#: ecommerce/coupons/views.py:295 +#: ecommerce/coupons/views.py:299 msgid "This coupon code is not valid for this course. Try a different course." msgstr "" -#: ecommerce/courses/models.py:32 ecommerce/extensions/basket/models.py:20 -#: ecommerce/extensions/offer/models.py:237 +#: ecommerce/courses/models.py:33 ecommerce/extensions/basket/models.py:20 +#: ecommerce/extensions/offer/models.py:238 #: ecommerce/extensions/payment/models.py:68 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:63 #: ecommerce/templates/oscar/dashboard/offers/summary.html:14 msgid "Site" msgstr "" -#: ecommerce/courses/models.py:39 +#: ecommerce/courses/models.py:40 msgid "" "Last date/time on which verification for this product can be submitted." msgstr "" @@ -392,43 +392,43 @@ msgstr "" msgid "Failed to publish commerce data for {course_id} to LMS." msgstr "" -#: ecommerce/courses/utils.py:139 +#: ecommerce/courses/utils.py:138 msgid "Audit" msgstr "" -#: ecommerce/courses/utils.py:140 +#: ecommerce/courses/utils.py:139 msgid "Credit" msgstr "學分" -#: ecommerce/courses/utils.py:141 +#: ecommerce/courses/utils.py:140 msgid "Honor" msgstr "" -#: ecommerce/courses/utils.py:142 +#: ecommerce/courses/utils.py:141 msgid "Professional" msgstr "" -#: ecommerce/courses/utils.py:143 +#: ecommerce/courses/utils.py:142 msgid "Verified" msgstr "" -#: ecommerce/courses/utils.py:144 +#: ecommerce/courses/utils.py:143 msgid "Executive Education" msgstr "" -#: ecommerce/courses/utils.py:145 +#: ecommerce/courses/utils.py:144 msgid "Paid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:146 +#: ecommerce/courses/utils.py:145 msgid "Unpaid Executive Education" msgstr "" -#: ecommerce/courses/utils.py:147 +#: ecommerce/courses/utils.py:146 msgid "Paid Bootcamp" msgstr "" -#: ecommerce/courses/utils.py:148 +#: ecommerce/courses/utils.py:147 msgid "Unpaid Bootcamp" msgstr "" @@ -490,150 +490,160 @@ msgid "" "questions." msgstr "" -#: ecommerce/enterprise/forms.py:35 +#: ecommerce/enterprise/forms.py:38 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:30 msgid "Enterprise Customer UUID" msgstr "" -#: ecommerce/enterprise/forms.py:36 +#: ecommerce/enterprise/forms.py:39 #: ecommerce/enterprise/templates/enterprise/enterpriseoffer_list.html:31 msgid "Enterprise Customer Catalog UUID" msgstr "" -#: ecommerce/enterprise/forms.py:37 ecommerce/programs/forms.py:23 +#: ecommerce/enterprise/forms.py:40 ecommerce/programs/forms.py:23 msgid "Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:39 ecommerce/programs/forms.py:25 +#: ecommerce/enterprise/forms.py:42 ecommerce/programs/forms.py:25 msgid "Discount Value" msgstr "" -#: ecommerce/enterprise/forms.py:42 +#: ecommerce/enterprise/forms.py:45 msgid "Contract Discount Type" msgstr "" -#: ecommerce/enterprise/forms.py:45 +#: ecommerce/enterprise/forms.py:48 msgid "Contract Discount" msgstr "" -#: ecommerce/enterprise/forms.py:48 +#: ecommerce/enterprise/forms.py:51 msgid "Prepaid Invoice Amount" msgstr "" -#: ecommerce/enterprise/forms.py:50 +#: ecommerce/enterprise/forms.py:53 msgid "Salesforce Opportunity ID" msgstr "" -#: ecommerce/enterprise/forms.py:53 +#: ecommerce/enterprise/forms.py:55 +msgid "Salesforce Opportunity Line Item" +msgstr "" + +#: ecommerce/enterprise/forms.py:58 msgid "Emails Addresses" msgstr "" -#: ecommerce/enterprise/forms.py:54 +#: ecommerce/enterprise/forms.py:59 msgid "Comma separated emails which will receive the offer usage alerts" msgstr "" -#: ecommerce/enterprise/forms.py:59 +#: ecommerce/enterprise/forms.py:64 msgid "Frequency for offer usage emails" msgstr "" -#: ecommerce/enterprise/forms.py:73 +#: ecommerce/enterprise/forms.py:79 msgid "The maximum number of enrollments that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:74 +#: ecommerce/enterprise/forms.py:80 msgid "The maximum USD dollar amount that can be redeemed by this offer." msgstr "" -#: ecommerce/enterprise/forms.py:75 +#: ecommerce/enterprise/forms.py:81 msgid "" "The maximum number of enrollments, by a user, that can redeem this offer." msgstr "" -#: ecommerce/enterprise/forms.py:76 +#: ecommerce/enterprise/forms.py:82 msgid "" "The maximum USD dollar amount that can be redeemed using this offer by a " "user." msgstr "" -#: ecommerce/enterprise/forms.py:79 ecommerce/programs/forms.py:35 +#: ecommerce/enterprise/forms.py:85 ecommerce/programs/forms.py:35 msgid "Start Date" msgstr "" -#: ecommerce/enterprise/forms.py:80 ecommerce/programs/forms.py:36 +#: ecommerce/enterprise/forms.py:86 ecommerce/programs/forms.py:36 msgid "End Date" msgstr "" -#: ecommerce/enterprise/forms.py:81 +#: ecommerce/enterprise/forms.py:87 msgid "Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:82 +#: ecommerce/enterprise/forms.py:88 msgid "Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:83 +#: ecommerce/enterprise/forms.py:89 msgid "Per User Enrollment Limit" msgstr "" -#: ecommerce/enterprise/forms.py:84 +#: ecommerce/enterprise/forms.py:90 msgid "Per User Bookings Limit" msgstr "" -#: ecommerce/enterprise/forms.py:146 ecommerce/enterprise/forms.py:204 +#: ecommerce/enterprise/forms.py:152 ecommerce/enterprise/forms.py:220 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({offer_enrollments}) value." msgstr "" -#: ecommerce/enterprise/forms.py:160 +#: ecommerce/enterprise/forms.py:166 msgid "" "Salesforce Opportunity ID must be 18 alphanumeric characters and begin with " "006." msgstr "" -#: ecommerce/enterprise/forms.py:168 ecommerce/enterprise/forms.py:216 +#: ecommerce/enterprise/forms.py:176 +msgid "" +"The Salesforce Opportunity Line Item must be 18 alphanumeric characters and " +"begin with a number." +msgstr "" + +#: ecommerce/enterprise/forms.py:184 ecommerce/enterprise/forms.py:232 msgid "Ensure this value is greater than or equal to 0." msgstr "" -#: ecommerce/enterprise/forms.py:175 ecommerce/enterprise/forms.py:232 +#: ecommerce/enterprise/forms.py:191 ecommerce/enterprise/forms.py:248 #, python-brace-format msgid "" "Ensure new value must be greater than or equal to " "consumed({consumed_discount:.2f}) value." msgstr "" -#: ecommerce/enterprise/forms.py:249 +#: ecommerce/enterprise/forms.py:265 #, python-brace-format msgid "Given email address {email} is not a valid email." msgstr "" -#: ecommerce/enterprise/forms.py:274 +#: ecommerce/enterprise/forms.py:290 msgid "An offer already exists for this Enterprise & Catalog combination." msgstr "" -#: ecommerce/enterprise/forms.py:277 ecommerce/enterprise/forms.py:286 +#: ecommerce/enterprise/forms.py:293 ecommerce/enterprise/forms.py:302 #: ecommerce/programs/forms.py:73 msgid "Percentage discounts cannot be greater than 100%." msgstr "" -#: ecommerce/enterprise/forms.py:280 ecommerce/programs/forms.py:76 +#: ecommerce/enterprise/forms.py:296 ecommerce/programs/forms.py:76 msgid "A start date must be specified when specifying an end date." msgstr "" -#: ecommerce/enterprise/forms.py:283 ecommerce/programs/forms.py:79 +#: ecommerce/enterprise/forms.py:299 ecommerce/programs/forms.py:79 msgid "The start date must occur before the end date." msgstr "" -#: ecommerce/enterprise/forms.py:291 +#: ecommerce/enterprise/forms.py:307 msgid "More than 2 digits after the decimal not allowed for absolute value." msgstr "" -#: ecommerce/enterprise/forms.py:296 +#: ecommerce/enterprise/forms.py:312 msgid "This field is required when contract discount type is absolute." msgstr "" -#: ecommerce/enterprise/forms.py:320 +#: ecommerce/enterprise/forms.py:337 msgid "Discount of type {} provided by {} for {}." msgstr "" @@ -803,41 +813,41 @@ msgid "" "We couldn't find enough information about you to perform the calculation." msgstr "" -#: ecommerce/extensions/api/serializers.py:255 +#: ecommerce/extensions/api/serializers.py:259 msgid "EXPIRED" msgstr "" -#: ecommerce/extensions/api/serializers.py:257 +#: ecommerce/extensions/api/serializers.py:261 msgid "INACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:258 +#: ecommerce/extensions/api/serializers.py:262 msgid "ACTIVE" msgstr "" -#: ecommerce/extensions/api/serializers.py:664 +#: ecommerce/extensions/api/serializers.py:703 msgid "Products must have a certificate type." msgstr "" -#: ecommerce/extensions/api/serializers.py:667 -#: ecommerce/extensions/api/serializers.py:710 +#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:751 msgid "Products must have a price." msgstr "" -#: ecommerce/extensions/api/serializers.py:674 +#: ecommerce/extensions/api/serializers.py:713 msgid "You need to provide a course UUID to create Course Entitlements." msgstr "" -#: ecommerce/extensions/api/serializers.py:706 +#: ecommerce/extensions/api/serializers.py:747 msgid "Products must indicate whether ID verification is required." msgstr "" -#: ecommerce/extensions/api/serializers.py:777 +#: ecommerce/extensions/api/serializers.py:818 #, python-brace-format msgid "Invalid product class [{product_class}] requested." msgstr "" -#: ecommerce/extensions/api/serializers.py:809 +#: ecommerce/extensions/api/serializers.py:850 #, python-brace-format msgid "" "Course [{course_id}] was not published to LMS because the switch " @@ -845,39 +855,40 @@ msgid "" " been saved." msgstr "" -#: ecommerce/extensions/api/serializers.py:1479 +#: ecommerce/extensions/api/serializers.py:1548 msgid "Enrollment code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1480 +#: ecommerce/extensions/api/serializers.py:1549 msgid "Discount code" msgstr "" -#: ecommerce/extensions/api/serializers.py:1947 +#: ecommerce/extensions/api/serializers.py:2046 msgid "Invalid order number or order {} does not exists." msgstr "" -#: ecommerce/extensions/api/serializers.py:2002 +#: ecommerce/extensions/api/serializers.py:2101 msgid "New coupon voucher assignment Failure. Error: {}" msgstr "" -#: ecommerce/extensions/api/serializers.py:2020 +#: ecommerce/extensions/api/serializers.py:2119 msgid "" "Your order {} can not be refunded as '{}' coupon are not supported to " "refund." msgstr "" -#: ecommerce/extensions/api/serializers.py:2051 +#: ecommerce/extensions/api/serializers.py:2150 msgid "Could note create new voucher for the order: {}" msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:445 -#: ecommerce/extensions/basket/views.py:458 +#: ecommerce/extensions/basket/views.py:460 +#: ecommerce/extensions/iap/api/v1/views.py:129 msgid "No SKUs provided." msgstr "" #: ecommerce/extensions/api/v2/views/baskets.py:456 -#: ecommerce/extensions/basket/views.py:465 +#: ecommerce/extensions/basket/views.py:467 #, python-brace-format msgid "Products with SKU(s) [{skus}] do not exist." msgstr "" @@ -915,84 +926,84 @@ msgstr "屬性類型" msgid "Text Attribute" msgstr "文本屬性" -#: ecommerce/extensions/basket/utils.py:145 +#: ecommerce/extensions/basket/utils.py:155 msgid "" "Due to export controls, we cannot allow you to access this course at this " "time." msgstr "" -#: ecommerce/extensions/basket/utils.py:235 +#: ecommerce/extensions/basket/utils.py:245 msgid "Click here to just purchase an enrollment for yourself" msgstr "" -#: ecommerce/extensions/basket/utils.py:238 +#: ecommerce/extensions/basket/utils.py:248 msgid "Click here to purchase multiple seats in this course" msgstr "" -#: ecommerce/extensions/basket/utils.py:466 +#: ecommerce/extensions/basket/utils.py:498 #, python-brace-format msgid "Coupon code '{code}' has expired." msgstr "此優惠券代碼 '{code}'已逾期。" -#: ecommerce/extensions/basket/utils.py:470 +#: ecommerce/extensions/basket/utils.py:502 #, python-brace-format msgid "Coupon code '{code}' is not active." msgstr "" -#: ecommerce/extensions/basket/utils.py:476 +#: ecommerce/extensions/basket/utils.py:508 #, python-brace-format msgid "Coupon code '{code}' is not available. {msg}" msgstr "" -#: ecommerce/extensions/basket/utils.py:482 +#: ecommerce/extensions/basket/utils.py:514 #, python-brace-format msgid "Coupon code '{code}' is not valid for this basket." msgstr "" -#: ecommerce/extensions/basket/utils.py:495 +#: ecommerce/extensions/basket/utils.py:527 #, python-brace-format msgid "" "Coupon code '{code}' is not valid for this basket for a bundled purchase." msgstr "" -#: ecommerce/extensions/basket/utils.py:550 +#: ecommerce/extensions/basket/utils.py:582 #, python-brace-format msgid "Coupon code '{code}' added to basket." msgstr "優惠券代碼「{code}」已套用至購物籃。" -#: ecommerce/extensions/basket/utils.py:553 +#: ecommerce/extensions/basket/utils.py:585 #, python-brace-format msgid "Basket does not qualify for coupon code {code}." msgstr "" -#: ecommerce/extensions/basket/views.py:204 +#: ecommerce/extensions/basket/views.py:206 #, python-brace-format msgid "Could not apply the code '{code}'; it requires data sharing consent." msgstr "" -#: ecommerce/extensions/basket/views.py:295 +#: ecommerce/extensions/basket/views.py:297 msgid "" "After you complete your order you will be able to select course dates from " "your dashboard." msgstr "" -#: ecommerce/extensions/basket/views.py:310 +#: ecommerce/extensions/basket/views.py:312 msgid "" "After you complete your order you will be automatically enrolled in the " "verified track of the course." msgstr "" -#: ecommerce/extensions/basket/views.py:314 +#: ecommerce/extensions/basket/views.py:316 msgid "After you complete your order you will receive credit for your course." msgstr "" -#: ecommerce/extensions/basket/views.py:317 +#: ecommerce/extensions/basket/views.py:319 msgid "" "After you complete your order you will be automatically enrolled in the " "course." msgstr "" -#: ecommerce/extensions/basket/views.py:321 +#: ecommerce/extensions/basket/views.py:323 #, python-brace-format msgid "" "{paragraph_start}By purchasing, you and your organization agree to the " @@ -1009,7 +1020,7 @@ msgid "" "{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:359 +#: ecommerce/extensions/basket/views.py:361 #, python-brace-format msgid "" "{strong_start}Purchasing just for yourself?{strong_end}{paragraph_start}If " @@ -1018,44 +1029,44 @@ msgid "" "enroll directly.{paragraph_end}" msgstr "" -#: ecommerce/extensions/basket/views.py:437 +#: ecommerce/extensions/basket/views.py:439 msgid "You have already purchased these products" msgstr "" -#: ecommerce/extensions/basket/views.py:482 +#: ecommerce/extensions/basket/views.py:484 msgid "No product is available to buy." msgstr "" -#: ecommerce/extensions/basket/views.py:899 +#: ecommerce/extensions/basket/views.py:902 msgid "quantity successfully updated" msgstr "" -#: ecommerce/extensions/basket/views.py:918 +#: ecommerce/extensions/basket/views.py:921 msgid "" "Your basket couldn't be updated. Please correct any validation errors below." msgstr "" -#: ecommerce/extensions/basket/views.py:972 +#: ecommerce/extensions/basket/views.py:975 #, python-brace-format msgid "You have already added coupon code '{code}' to your basket." msgstr "您已在購物籃中添加了優惠券代碼「{code}」。" -#: ecommerce/extensions/basket/views.py:1048 +#: ecommerce/extensions/basket/views.py:1051 #, python-brace-format msgid "Coupon code '{code}' does not exist." msgstr "優惠券代碼 '{code}'不存在。" -#: ecommerce/extensions/basket/views.py:1133 +#: ecommerce/extensions/basket/views.py:1136 #, python-format msgid "No coupon found with id '%s'" msgstr "" -#: ecommerce/extensions/basket/views.py:1137 +#: ecommerce/extensions/basket/views.py:1140 #, python-format msgid "Coupon code '%s' was removed from your basket." msgstr "" -#: ecommerce/extensions/catalogue/models.py:68 +#: ecommerce/extensions/catalogue/models.py:69 msgid "Last date/time on which this product can be purchased." msgstr "" @@ -1121,6 +1132,20 @@ msgstr "狀態" msgid "Failed to retrieve enrollment data." msgstr "" +#: ecommerce/extensions/iap/models.py:14 +msgid "" +"Number of times to retry failing IAP client actions (e.g., payment creation," +" payment execution)" +msgstr "" + +#: ecommerce/extensions/iap/models.py:21 +msgid "Past number of days to fetch Android refunds for." +msgstr "" + +#: ecommerce/extensions/iap/models.py:36 +msgid "Original Transaction ID" +msgstr "" + #: ecommerce/extensions/offer/constants.py:32 msgid "Day 3" msgstr "" @@ -1153,23 +1178,23 @@ msgstr "" msgid "Manual" msgstr "" -#: ecommerce/extensions/offer/models.py:446 +#: ecommerce/extensions/offer/models.py:447 msgid "Course Catalog ID from the Discovery Service." msgstr "" -#: ecommerce/extensions/offer/models.py:457 +#: ecommerce/extensions/offer/models.py:458 msgid "UUID for an EnterpriseCustomerCatalog from the Enterprise Service." msgstr "" -#: ecommerce/extensions/offer/models.py:589 +#: ecommerce/extensions/offer/models.py:590 msgid "EnterpriseCustomer Name" msgstr "" -#: ecommerce/extensions/offer/models.py:594 +#: ecommerce/extensions/offer/models.py:595 msgid "EnterpriseCustomerCatalog UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:599 +#: ecommerce/extensions/offer/models.py:600 #: ecommerce/extensions/voucher/utils.py:53 #: ecommerce/extensions/voucher/utils.py:190 #: ecommerce/extensions/voucher/utils.py:270 @@ -1180,35 +1205,35 @@ msgstr "" msgid "Program UUID" msgstr "" -#: ecommerce/extensions/offer/models.py:612 +#: ecommerce/extensions/offer/models.py:613 msgid "Email to user pending." msgstr "" -#: ecommerce/extensions/offer/models.py:613 +#: ecommerce/extensions/offer/models.py:614 msgid "Code successfully assigned to user." msgstr "" -#: ecommerce/extensions/offer/models.py:614 +#: ecommerce/extensions/offer/models.py:615 msgid "Code has been redeemed by user." msgstr "" -#: ecommerce/extensions/offer/models.py:615 +#: ecommerce/extensions/offer/models.py:616 msgid "Email to user bounced." msgstr "" -#: ecommerce/extensions/offer/models.py:616 +#: ecommerce/extensions/offer/models.py:617 msgid "Code has been revoked for this user." msgstr "" -#: ecommerce/extensions/offer/models.py:662 +#: ecommerce/extensions/offer/models.py:663 msgid "Make a particular template version active." msgstr "" -#: ecommerce/extensions/offer/models.py:882 +#: ecommerce/extensions/offer/models.py:883 msgid "Email has been sent." msgstr "" -#: ecommerce/extensions/offer/models.py:883 +#: ecommerce/extensions/offer/models.py:884 msgid "This user should receive email" msgstr "" @@ -1258,7 +1283,7 @@ msgstr "" msgid "Partner" msgstr "" -#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:258 +#: ecommerce/extensions/partner/models.py:23 ecommerce/settings/_oscar.py:276 msgid "Partners" msgstr "合作夥伴" @@ -1267,14 +1292,30 @@ msgid "American Express" msgstr "" #: ecommerce/extensions/payment/constants.py:14 +msgid "Diners" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:18 msgid "Discover" msgstr "" -#: ecommerce/extensions/payment/constants.py:20 +#: ecommerce/extensions/payment/constants.py:24 +msgid "JCB" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:28 msgid "MasterCard" msgstr "" -#: ecommerce/extensions/payment/constants.py:26 +#: ecommerce/extensions/payment/constants.py:34 +msgid "UnionPay" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:38 +msgid "Unknown" +msgstr "" + +#: ecommerce/extensions/payment/constants.py:42 msgid "Visa" msgstr "" @@ -1305,7 +1346,7 @@ msgstr "" #: ecommerce/extensions/payment/forms.py:141 #: ecommerce/extensions/payment/forms.py:218 -#: ecommerce/extensions/payment/views/__init__.py:97 +#: ecommerce/extensions/payment/views/__init__.py:87 msgid "" "There was a problem retrieving your basket. Refresh the page to try again." msgstr "" @@ -1387,11 +1428,11 @@ msgstr "" #. to indicate that truncation has occurred. For example, if a title may only #. be at most 11 characters long, "A Very Long Title" (17 characters) would be #. truncated to "A Ve...itle". -#: ecommerce/extensions/payment/utils.py:75 +#: ecommerce/extensions/payment/utils.py:77 msgid "..." msgstr "..." -#: ecommerce/extensions/payment/views/cybersource.py:367 +#: ecommerce/extensions/payment/views/cybersource.py:368 msgid "transaction declined" msgstr "" @@ -1436,7 +1477,7 @@ msgid "Line Credit (excl. tax)" msgstr "" #: ecommerce/extensions/refund/models.py:314 -#: ecommerce/templates/edx/checkout/receipt.html:93 +#: ecommerce/templates/edx/checkout/receipt.html:103 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:30 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:51 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:43 @@ -1491,7 +1532,7 @@ msgstr "" #: ecommerce/extensions/voucher/tests/test_utils.py:384 #: ecommerce/extensions/voucher/utils.py:95 #: ecommerce/extensions/voucher/utils.py:161 -#: ecommerce/templates/edx/checkout/receipt.html:125 +#: ecommerce/templates/edx/checkout/receipt.html:135 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:195 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:217 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:261 @@ -1827,7 +1868,7 @@ msgstr "" msgid "UTM Created At" msgstr "" -#: ecommerce/settings/_oscar.py:215 +#: ecommerce/settings/_oscar.py:233 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:18 #: ecommerce/templates/oscar/dashboard/index.html:22 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:12 @@ -1840,38 +1881,38 @@ msgstr "" msgid "Dashboard" msgstr "我的課程" -#: ecommerce/settings/_oscar.py:220 +#: ecommerce/settings/_oscar.py:238 msgid "Catalogue" msgstr "目錄" -#: ecommerce/settings/_oscar.py:224 +#: ecommerce/settings/_oscar.py:242 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:12 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:21 msgid "Products" msgstr "產品" -#: ecommerce/settings/_oscar.py:228 +#: ecommerce/settings/_oscar.py:246 msgid "Product Types" msgstr "產品類型" -#: ecommerce/settings/_oscar.py:232 +#: ecommerce/settings/_oscar.py:250 #: ecommerce/templates/oscar/dashboard/catalogue/product_update.html:75 msgid "Categories" msgstr "" -#: ecommerce/settings/_oscar.py:236 +#: ecommerce/settings/_oscar.py:254 msgid "Ranges" msgstr "範圍" -#: ecommerce/settings/_oscar.py:240 +#: ecommerce/settings/_oscar.py:258 msgid "Low stock alerts" msgstr "" -#: ecommerce/settings/_oscar.py:246 +#: ecommerce/settings/_oscar.py:264 msgid "Fulfillment" msgstr "" -#: ecommerce/settings/_oscar.py:250 +#: ecommerce/settings/_oscar.py:268 #: ecommerce/templates/oscar/dashboard/index.html:33 #: ecommerce/templates/oscar/dashboard/orders/line_detail.html:17 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:32 @@ -1883,11 +1924,11 @@ msgstr "" msgid "Orders" msgstr "" -#: ecommerce/settings/_oscar.py:254 +#: ecommerce/settings/_oscar.py:272 msgid "Statistics" msgstr "統計" -#: ecommerce/settings/_oscar.py:262 +#: ecommerce/settings/_oscar.py:280 #: ecommerce/templates/oscar/dashboard/orders/order_detail.html:107 #: ecommerce/templates/oscar/dashboard/partials/refund_table.html:5 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:34 @@ -1898,25 +1939,25 @@ msgstr "統計" msgid "Refunds" msgstr "" -#: ecommerce/settings/_oscar.py:268 ecommerce/settings/_oscar.py:272 +#: ecommerce/settings/_oscar.py:286 ecommerce/settings/_oscar.py:290 #: ecommerce/templates/oscar/dashboard/users/detail.html:23 msgid "Customers" msgstr "" -#: ecommerce/settings/_oscar.py:276 +#: ecommerce/settings/_oscar.py:294 msgid "Stock alert requests" msgstr "" -#: ecommerce/settings/_oscar.py:282 ecommerce/settings/_oscar.py:286 +#: ecommerce/settings/_oscar.py:300 ecommerce/settings/_oscar.py:304 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:15 msgid "Offers" msgstr "" -#: ecommerce/settings/_oscar.py:290 +#: ecommerce/settings/_oscar.py:308 msgid "Vouchers" msgstr "" -#: ecommerce/settings/_oscar.py:296 +#: ecommerce/settings/_oscar.py:314 msgid "Reports" msgstr "報告" @@ -2033,89 +2074,98 @@ msgid "" "you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:59 +#: ecommerce/templates/edx/checkout/receipt.html:60 +#, python-brace-format +msgid "" +"Your order is complete. If you need a receipt, you can print this page. " +"{next_start} Next Steps:{next_end} 1. Check your inbox for an order " +"confirmation email from Get Smarter.{next_line} 2: Follow the instructions " +"in the email to complete your registration." +msgstr "" + +#: ecommerce/templates/edx/checkout/receipt.html:68 msgid "" "Your order is complete. If you need a receipt, you can print this page." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:77 +#: ecommerce/templates/edx/checkout/receipt.html:87 msgid "Order Number:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:80 +#: ecommerce/templates/edx/checkout/receipt.html:90 msgid "Payment Method:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:83 +#: ecommerce/templates/edx/checkout/receipt.html:93 msgid "Order Date:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:89 +#: ecommerce/templates/edx/checkout/receipt.html:99 msgid "Order Information" msgstr "訂單資訊" -#: ecommerce/templates/edx/checkout/receipt.html:94 +#: ecommerce/templates/edx/checkout/receipt.html:104 #: ecommerce/templates/oscar/dashboard/offers/offer_detail.html:59 #: ecommerce/templates/oscar/dashboard/offers/summary.html:12 msgid "Description" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:95 +#: ecommerce/templates/edx/checkout/receipt.html:105 #: ecommerce/templates/oscar/basket/partials/hosted_checkout_basket.html:39 msgid "Item Price" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:99 +#: ecommerce/templates/edx/checkout/receipt.html:109 #: ecommerce/templates/oscar/dashboard/refunds/refund_detail.html:184 msgid "Quantity:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:101 +#: ecommerce/templates/edx/checkout/receipt.html:111 msgid "Description:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:110 +#: ecommerce/templates/edx/checkout/receipt.html:120 msgid "Item Price:" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:116 +#: ecommerce/templates/edx/checkout/receipt.html:126 #: ecommerce/templates/oscar/basket/partials/client_side_checkout_basket.html:52 msgid "Subtotal" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:132 +#: ecommerce/templates/edx/checkout/receipt.html:142 #, python-format msgid "%(voucher_discount_amount)s off" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:142 +#: ecommerce/templates/edx/checkout/receipt.html:152 #, python-format msgid "Discount of type %(type)s provided by %(enterprise_name)s" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:147 +#: ecommerce/templates/edx/checkout/receipt.html:157 msgid "Discount for your first upgrade" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:150 +#: ecommerce/templates/edx/checkout/receipt.html:160 #, python-format msgid "Discount of type %(type)s is provided." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:164 +#: ecommerce/templates/edx/checkout/receipt.html:174 #, python-format msgid "Courtesy of %(enterprise_name)s." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:177 +#: ecommerce/templates/edx/checkout/receipt.html:187 msgid "Total" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:184 +#: ecommerce/templates/edx/checkout/receipt.html:194 msgid "Get Your Course Credit" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:186 +#: ecommerce/templates/edx/checkout/receipt.html:196 #, python-brace-format msgid "" "To receive academic credit for this course, you must apply for credit at the" @@ -2125,11 +2175,11 @@ msgid "" " course name." msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:199 +#: ecommerce/templates/edx/checkout/receipt.html:210 msgid "Go to dashboard" msgstr "" -#: ecommerce/templates/edx/checkout/receipt.html:202 +#: ecommerce/templates/edx/checkout/receipt.html:213 msgid "Find more courses" msgstr "" diff --git a/ecommerce/conf/locale/zh_TW/LC_MESSAGES/djangojs.mo b/ecommerce/conf/locale/zh_TW/LC_MESSAGES/djangojs.mo index ebae1fcfb73..606e31722bf 100644 Binary files a/ecommerce/conf/locale/zh_TW/LC_MESSAGES/djangojs.mo and b/ecommerce/conf/locale/zh_TW/LC_MESSAGES/djangojs.mo differ diff --git a/ecommerce/conf/locale/zh_TW/LC_MESSAGES/djangojs.po b/ecommerce/conf/locale/zh_TW/LC_MESSAGES/djangojs.po index e60ae04da7e..b480dc4f9e5 100644 --- a/ecommerce/conf/locale/zh_TW/LC_MESSAGES/djangojs.po +++ b/ecommerce/conf/locale/zh_TW/LC_MESSAGES/djangojs.po @@ -21,10 +21,10 @@ msgid "" msgstr "" "Project-Id-Version: edx-platform\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 20:12+0000\n" +"POT-Creation-Date: 2023-06-25 20:12+0000\n" "PO-Revision-Date: 2015-06-18 02:02+0000\n" "Last-Translator: Julia Oppenheimer , 2019\n" -"Language-Team: Chinese (Taiwan) (http://www.transifex.com/open-edx/edx-platform/language/zh_TW/)\n" +"Language-Team: Chinese (Taiwan) (http://app.transifex.com/open-edx/edx-platform/language/zh_TW/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -323,11 +323,11 @@ msgstr "" msgid "Discount Code" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:781 +#: ecommerce/static/js/views/coupon_form_view.js:787 msgid "Save Changes" msgstr "" -#: ecommerce/static/js/views/coupon_form_view.js:796 +#: ecommerce/static/js/views/coupon_form_view.js:802 msgid "Create Coupon" msgstr "" @@ -469,7 +469,7 @@ msgstr "" msgid "Can be used multiple times by one customer" msgstr "" -#: ecommerce/static/js/views/enterprise_coupon_form_view.js:279 +#: ecommerce/static/js/views/enterprise_coupon_form_view.js:280 msgid "Create and Add More" msgstr ""