diff --git a/lms/djangoapps/commerce/urls.py b/lms/djangoapps/commerce/urls.py index fb33f18d75..1ef38c168e 100644 --- a/lms/djangoapps/commerce/urls.py +++ b/lms/djangoapps/commerce/urls.py @@ -9,5 +9,6 @@ from commerce import views urlpatterns = patterns( '', url(r'^checkout/cancel/$', views.checkout_cancel, name='checkout_cancel'), + url(r'^checkout/error/$', views.checkout_error, name='checkout_error'), url(r'^checkout/receipt/$', views.checkout_receipt, name='checkout_receipt'), ) diff --git a/lms/djangoapps/commerce/views.py b/lms/djangoapps/commerce/views.py index 58e1ec0cd8..92094e5986 100644 --- a/lms/djangoapps/commerce/views.py +++ b/lms/djangoapps/commerce/views.py @@ -22,6 +22,13 @@ def checkout_cancel(_request): return render_to_response("commerce/checkout_cancel.html", context) +@csrf_exempt +def checkout_error(_request): + """ Checkout/payment error view. """ + context = {'payment_support_email': microsite.get_value('payment_support_email', settings.PAYMENT_SUPPORT_EMAIL)} + return render_to_response("commerce/checkout_error.html", context) + + @csrf_exempt @login_required def checkout_receipt(request): diff --git a/lms/templates/commerce/checkout_error.html b/lms/templates/commerce/checkout_error.html new file mode 100644 index 0000000000..df170377f4 --- /dev/null +++ b/lms/templates/commerce/checkout_error.html @@ -0,0 +1,12 @@ +<%! from django.utils.translation import ugettext as _ %> + +<%inherit file="../main.html" /> + +<%block name="pagetitle">${_("Checkout Error")} + + +
+

${_("Checkout Error")}

+ ${ _(u"An error has occurred with your payment. You have not been charged. Please try to submit your payment again. If this problem persists, contact {email}.").format( + email="{email}".format(email=payment_support_email)) } +