From 6f8090eadb0bbf48e8800523af399a7aff217ad9 Mon Sep 17 00:00:00 2001 From: Matthew Piatetsky <mpiatetsky@edx.org> Date: Fri, 16 Nov 2018 15:19:14 -0500 Subject: [PATCH] handle case when list of programs for course is empty --- common/djangoapps/course_modes/views.py | 38 +++++++++++++------------ 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/common/djangoapps/course_modes/views.py b/common/djangoapps/course_modes/views.py index 89dac8f5d96..15a8a365289 100644 --- a/common/djangoapps/course_modes/views.py +++ b/common/djangoapps/course_modes/views.py @@ -154,22 +154,24 @@ class ChooseModeView(View): meter_inverted_programs = meter.invert_programs() if len(meter_inverted_programs) > 0: # program for the course on this page - program_for_course = meter_inverted_programs.get(course_id)[0] - program_uuid = program_for_course.get('uuid') - if program_for_course: - # program data with bundle info - program_data = ProgramDataExtender(program_for_course, request.user, mobile_only=False).extend() - skus = program_data.get('skus') - ecommerce_service = EcommerceService() - program_bundle_url = ecommerce_service.get_checkout_page_url(*skus, program_uuid=program_uuid) - bundle_data = { - 'program_marketing_site_url': program_data.get('marketing_url'), - 'program_bundle_url': program_bundle_url, - 'discount_data': program_data.get('discount_data'), - 'program_type': program_data.get('type'), - 'program_title': program_data.get('title'), - 'program_price': program_data.get('full_program_price'), - } + programs_for_course = meter_inverted_programs.get(course_id) + if programs_for_course: + program_for_course = programs_for_course[0] + program_uuid = program_for_course.get('uuid') + if program_for_course: + # program data with bundle info + program_data = ProgramDataExtender(program_for_course, request.user, mobile_only=False).extend() + skus = program_data.get('skus') + ecommerce_service = EcommerceService() + program_bundle_url = ecommerce_service.get_checkout_page_url(*skus, program_uuid=program_uuid) + bundle_data = { + 'program_marketing_site_url': program_data.get('marketing_url'), + 'program_bundle_url': program_bundle_url, + 'discount_data': program_data.get('discount_data'), + 'program_type': program_data.get('type'), + 'program_title': program_data.get('title'), + 'program_price': program_data.get('full_program_price'), + } context = { "bundle_data": bundle_data, @@ -179,7 +181,7 @@ class ChooseModeView(View): ), "modes": modes, "has_credit_upsell": has_credit_upsell, - "course_name": course.display_name_with_default_escaped, + "course_name": course.display_name_with_default, "course_org": course.display_org_with_default, "course_num": course.display_number_with_default, "chosen_price": chosen_price, @@ -196,7 +198,7 @@ class ChooseModeView(View): ) title_content = _("Congratulations! You are now enrolled in {course_name}").format( - course_name=course.display_name_with_default_escaped + course_name=course.display_name_with_default ) context["title_content"] = title_content -- GitLab