Merge pull request #20012 from edx/crice/REVEM-246_status
REVEM-246 Add program status and one-click eligibility
This commit is contained in:
@@ -241,11 +241,15 @@ def get_experiment_user_metadata_context(course, user):
|
||||
courses_left_to_purchase_price = None
|
||||
courses_left_to_purchase_url = None
|
||||
program_uuid = program.get('uuid')
|
||||
status = None
|
||||
is_eligible_for_one_click_purchase = None
|
||||
if courses is not None:
|
||||
total_courses = len(courses)
|
||||
complete_enrollment = is_enrolled_in_all_courses(courses, user_enrollments)
|
||||
|
||||
if PROGRAM_PRICE_FLAG.is_enabled():
|
||||
status = program.get('status')
|
||||
is_eligible_for_one_click_purchase = program.get('is_program_eligible_for_one_click_purchase')
|
||||
# Get the price and purchase URL of the program courses the user has yet to purchase. Say a
|
||||
# program has 3 courses (A, B and C), and the user previously purchased a certificate for A.
|
||||
# The user is enrolled in audit mode for B. The "left to purchase price" should be the price of
|
||||
@@ -255,15 +259,19 @@ def get_experiment_user_metadata_context(course, user):
|
||||
courses_left_to_purchase = get_unenrolled_courses(courses, non_audit_enrollments)
|
||||
if courses_left_to_purchase:
|
||||
has_courses_left_to_purchase = True
|
||||
courses_left_to_purchase_price, courses_left_to_purchase_skus = get_program_price_and_skus(
|
||||
courses_left_to_purchase)
|
||||
courses_left_to_purchase_url = EcommerceService().get_checkout_page_url(
|
||||
*courses_left_to_purchase_skus, program_uuid=program_uuid)
|
||||
if is_eligible_for_one_click_purchase:
|
||||
courses_left_to_purchase_price, courses_left_to_purchase_skus = \
|
||||
get_program_price_and_skus(courses_left_to_purchase)
|
||||
if courses_left_to_purchase_skus:
|
||||
courses_left_to_purchase_url = EcommerceService().get_checkout_page_url(
|
||||
*courses_left_to_purchase_skus, program_uuid=program_uuid)
|
||||
|
||||
program_key = {
|
||||
'uuid': program_uuid,
|
||||
'title': program.get('title'),
|
||||
'marketing_url': program.get('marketing_url'),
|
||||
'status': status,
|
||||
'is_eligible_for_one_click_purchase': is_eligible_for_one_click_purchase,
|
||||
'total_courses': total_courses,
|
||||
'complete_enrollment': complete_enrollment,
|
||||
'has_courses_left_to_purchase': has_courses_left_to_purchase,
|
||||
|
||||
Reference in New Issue
Block a user