@@ -23,6 +23,7 @@ var edx = edx || {};
|
||||
context: this,
|
||||
success: function (requestData) {
|
||||
var $form = $('<form>', {
|
||||
'class': 'hidden',
|
||||
'action': requestData.url,
|
||||
'method': 'POST',
|
||||
'accept-method': 'UTF-8'
|
||||
@@ -35,7 +36,7 @@ var edx = edx || {};
|
||||
}).appendTo($form);
|
||||
});
|
||||
|
||||
$form.submit();
|
||||
$form.appendTo('body').submit();
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
@@ -288,6 +288,12 @@ function completeOrder(event) { // jshint ignore:line
|
||||
providerId = $(event).data("provider"),
|
||||
$errorContainer = $("#error-container");
|
||||
|
||||
try {
|
||||
event.preventDefault();
|
||||
} catch (err) {
|
||||
// Ignore the error as not all event inputs have the preventDefault method.
|
||||
}
|
||||
|
||||
analytics.track(
|
||||
"edx.bi.credit.clicked_complete_credit",
|
||||
{
|
||||
|
||||
@@ -36,6 +36,8 @@ var edx = edx || {};
|
||||
username = $target.data("user"),
|
||||
providerId = $target.data("provider");
|
||||
|
||||
event.preventDefault();
|
||||
|
||||
edx.commerce.credit.createCreditRequest(providerId, courseKey, username).fail(function () {
|
||||
$(".credit-action").hide();
|
||||
$errorContainer.toggleClass("is-hidden");
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
% if not credit_status["purchased"] and not credit_status["error"] :
|
||||
<p class="message-copy credit-msg credit-eligibility-msg">
|
||||
## Translators: provider_name is the name of a credit provider or university (e.g. State University)
|
||||
${_("You are now eligible to purchase course credit from {provider_name} for this course. Click <strong>Get Credit</strong> to get started.").format(
|
||||
provider_name=credit_status["provider_name"],
|
||||
${_("You are now eligible to purchase course credit for this course. Click <strong>Get Credit</strong> to get started.").format(
|
||||
provider_name=credit_status["provider_name"],
|
||||
)}
|
||||
</p>
|
||||
<div class="purchase_credit">
|
||||
|
||||
@@ -274,11 +274,7 @@ def create_credit_request(course_key, provider_id, username):
|
||||
"user_username": user.username,
|
||||
"user_email": user.email,
|
||||
"user_full_name": user.profile.name,
|
||||
"user_mailing_address": (
|
||||
user.profile.mailing_address
|
||||
if user.profile.mailing_address is not None
|
||||
else ""
|
||||
),
|
||||
"user_mailing_address": "",
|
||||
"user_country": (
|
||||
user.profile.country.code
|
||||
if user.profile.country.code is not None
|
||||
|
||||
@@ -639,7 +639,8 @@ class CreditProviderIntegrationApiTests(CreditApiTestBase):
|
||||
for key in self.USER_INFO.keys():
|
||||
param_key = 'user_{key}'.format(key=key)
|
||||
self.assertIn(param_key, parameters)
|
||||
self.assertEqual(parameters[param_key], self.USER_INFO[key])
|
||||
expected = '' if key == 'mailing_address' else self.USER_INFO[key]
|
||||
self.assertEqual(parameters[param_key], expected)
|
||||
|
||||
def test_create_credit_request_grade_length(self):
|
||||
""" Verify the length of the final grade is limited to seven (7) characters total.
|
||||
@@ -656,6 +657,11 @@ class CreditProviderIntegrationApiTests(CreditApiTestBase):
|
||||
request = api.create_credit_request(self.course_key, self.PROVIDER_ID, self.USER_INFO['username'])
|
||||
self.assertEqual(request['parameters']['final_grade'], u'0.33333')
|
||||
|
||||
def test_create_credit_request_address_empty(self):
|
||||
""" Verify the mailing address is always empty. """
|
||||
request = api.create_credit_request(self.course_key, self.PROVIDER_ID, self.user.username)
|
||||
self.assertEqual(request['parameters']['user_mailing_address'], '')
|
||||
|
||||
def test_credit_request_disable_integration(self):
|
||||
CreditProvider.objects.all().update(enable_integration=False)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user