From 9880676e6a22ff78a7c14c36246f0b6282f45adf Mon Sep 17 00:00:00 2001 From: Douglas Hall Date: Thu, 25 Apr 2019 04:48:22 -0400 Subject: [PATCH] Add site configuration check to order history MFE toggle. --- lms/envs/production.py | 1 + lms/templates/header/user_dropdown.html | 4 ++-- openedx/core/djangoapps/user_api/accounts/settings_views.py | 4 ++-- openedx/core/djangoapps/user_api/accounts/toggles.py | 6 ++++++ 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/lms/envs/production.py b/lms/envs/production.py index 7469d5a37c..771e411963 100644 --- a/lms/envs/production.py +++ b/lms/envs/production.py @@ -1103,6 +1103,7 @@ COURSE_ENROLLMENT_MODES = ENV_TOKENS.get('COURSE_ENROLLMENT_MODES', COURSE_ENROL ############## Settings for Microfrontend URLS ######################### WRITABLE_GRADEBOOK_URL = ENV_TOKENS.get('WRITABLE_GRADEBOOK_URL', WRITABLE_GRADEBOOK_URL) PROFILE_MICROFRONTEND_URL = ENV_TOKENS.get('PROFILE_MICROFRONTEND_URL', PROFILE_MICROFRONTEND_URL) +ORDER_HISTORY_MICROFRONTEND_URL = ENV_TOKENS.get('ORDER_HISTORY_MICROFRONTEND_URL', ORDER_HISTORY_MICROFRONTEND_URL) ############### Settings for edx-rbac ############### SYSTEM_WIDE_ROLE_CLASSES = ENV_TOKENS.get('SYSTEM_WIDE_ROLE_CLASSES') or SYSTEM_WIDE_ROLE_CLASSES diff --git a/lms/templates/header/user_dropdown.html b/lms/templates/header/user_dropdown.html index c4a379e614..29288047c8 100644 --- a/lms/templates/header/user_dropdown.html +++ b/lms/templates/header/user_dropdown.html @@ -8,7 +8,7 @@ from django.urls import reverse from django.utils.translation import ugettext as _ from openedx.core.djangoapps.user_api.accounts.image_helpers import get_profile_image_urls_for_user -from openedx.core.djangoapps.user_api.accounts.toggles import REDIRECT_TO_ORDER_HISTORY_MICROFRONTEND +from openedx.core.djangoapps.user_api.accounts.toggles import should_redirect_to_order_history_microfrontend from openedx.core.djangoapps.user_api.accounts.utils import retrieve_last_sitewide_block_completed from openedx.features.enterprise_support.utils import get_enterprise_learner_generic_name %> @@ -40,7 +40,7 @@ displayname = get_enterprise_learner_generic_name(request) or username - % if REDIRECT_TO_ORDER_HISTORY_MICROFRONTEND.is_enabled(): + % if should_redirect_to_order_history_microfrontend(): % endif diff --git a/openedx/core/djangoapps/user_api/accounts/settings_views.py b/openedx/core/djangoapps/user_api/accounts/settings_views.py index 6442980764..e74dfd1467 100644 --- a/openedx/core/djangoapps/user_api/accounts/settings_views.py +++ b/openedx/core/djangoapps/user_api/accounts/settings_views.py @@ -19,7 +19,7 @@ from openedx.core.djangoapps.dark_lang.models import DarkLangConfig from openedx.core.djangoapps.lang_pref.api import all_languages, released_languages from openedx.core.djangoapps.programs.models import ProgramsApiConfig from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers -from openedx.core.djangoapps.user_api.accounts.toggles import REDIRECT_TO_ORDER_HISTORY_MICROFRONTEND +from openedx.core.djangoapps.user_api.accounts.toggles import should_redirect_to_order_history_microfrontend from openedx.core.djangoapps.user_api.preferences.api import get_user_preferences from openedx.core.lib.edx_api_utils import get_edx_api_data from openedx.core.lib.time_zone_utils import TIME_ZONE_CHOICES @@ -119,7 +119,7 @@ def account_settings_context(request): 'show_program_listing': ProgramsApiConfig.is_enabled(), 'show_dashboard_tabs': True, 'order_history': user_orders, - 'disable_order_history_tab': REDIRECT_TO_ORDER_HISTORY_MICROFRONTEND.is_enabled(), + 'disable_order_history_tab': should_redirect_to_order_history_microfrontend(), 'enable_account_deletion': configuration_helpers.get_value( 'ENABLE_ACCOUNT_DELETION', settings.FEATURES.get('ENABLE_ACCOUNT_DELETION', False) ), diff --git a/openedx/core/djangoapps/user_api/accounts/toggles.py b/openedx/core/djangoapps/user_api/accounts/toggles.py index 24ecaaae1d..4bae68873a 100644 --- a/openedx/core/djangoapps/user_api/accounts/toggles.py +++ b/openedx/core/djangoapps/user_api/accounts/toggles.py @@ -1,6 +1,7 @@ """ Toggles for accounts related code. """ +from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers from openedx.core.djangoapps.waffle_utils import WaffleFlag @@ -16,3 +17,8 @@ from openedx.core.djangoapps.waffle_utils import WaffleFlag # .. toggle_tickets: DEPR-17 # .. toggle_status: supported REDIRECT_TO_ORDER_HISTORY_MICROFRONTEND = WaffleFlag('order_history', 'redirect_to_microfrontend') + + +def should_redirect_to_order_history_microfrontend(): + should_redirect_for_current_site = configuration_helpers.get_value('ENABLE_ORDER_HISTORY_MICROFRONTEND') + return REDIRECT_TO_ORDER_HISTORY_MICROFRONTEND.is_enabled() and should_redirect_for_current_site