diff --git a/lms/djangoapps/courseware/views/views.py b/lms/djangoapps/courseware/views/views.py index 7b0a9f9e47..321f1b2790 100644 --- a/lms/djangoapps/courseware/views/views.py +++ b/lms/djangoapps/courseware/views/views.py @@ -108,6 +108,7 @@ from openedx.core.djangoapps.util.user_messages import PageLevelMessages from openedx.core.djangoapps.zendesk_proxy.utils import create_zendesk_ticket from openedx.core.djangolib.markup import HTML, Text from openedx.core.lib.mobile_utils import is_request_from_mobile_app +from openedx.features.content_type_gating.models import ContentTypeGatingConfig from openedx.features.course_duration_limits.access import generate_course_expired_fragment from openedx.features.course_experience import ( COURSE_ENABLE_UNENROLLED_ACCESS_FLAG, @@ -1075,6 +1076,10 @@ def dates(request, course_id): 'can_masquerade': can_masquerade, 'masquerade': masquerade, 'on_dates_tab': True, + 'content_type_gating_enabled': ContentTypeGatingConfig.enabled_for_enrollment( + user=request.user, + course_key=course_key, + ), 'missed_deadlines': missed_deadlines, 'enrollment_mode': enrollment_mode, 'reset_deadlines_url': reverse(RESET_COURSE_DEADLINES_NAME), @@ -1680,6 +1685,10 @@ def render_xblock(request, usage_key_string, check_if_enrolled=True): 'enrollment_mode': enrollment_mode, 'web_app_course_url': reverse(COURSE_HOME_VIEW_NAME, args=[course.id]), 'on_courseware_page': True, + 'content_type_gating_enabled': ContentTypeGatingConfig.enabled_for_enrollment( + user=request.user, + course_key=course_key, + ), 'verified_upgrade_link': verified_upgrade_deadline_link(request.user, course=course), 'is_learning_mfe': request.META.get('HTTP_REFERER', '').startswith(settings.LEARNING_MICROFRONTEND_URL), 'is_mobile_app': is_request_from_mobile_app(request), diff --git a/openedx/features/content_type_gating/models.py b/openedx/features/content_type_gating/models.py index ce6026c505..1a402de9f7 100644 --- a/openedx/features/content_type_gating/models.py +++ b/openedx/features/content_type_gating/models.py @@ -96,7 +96,6 @@ class ContentTypeGatingConfig(StackedConfigurationModel): ``enabled_as_of`` before the enrollment was created. Arguments: - enrollment: The enrollment being queried. user: The user being queried. course_key: The CourseKey of the course being queried. """ diff --git a/openedx/features/course_experience/views/course_outline.py b/openedx/features/course_experience/views/course_outline.py index 88028069f9..ba98859c79 100644 --- a/openedx/features/course_experience/views/course_outline.py +++ b/openedx/features/course_experience/views/course_outline.py @@ -31,6 +31,7 @@ from openedx.core.djangoapps.content.course_overviews.models import CourseOvervi from openedx.core.djangoapps.plugin_api.views import EdxFragmentView from openedx.core.djangoapps.schedules.utils import reset_self_paced_schedule from openedx.features.course_experience import RELATIVE_DATES_FLAG +from openedx.features.content_type_gating.models import ContentTypeGatingConfig from student.models import CourseEnrollment from util.milestones_helpers import get_course_content_milestones from xmodule.course_module import COURSE_VISIBILITY_PUBLIC @@ -107,6 +108,10 @@ class CourseOutlineFragmentView(EdxFragmentView): context['enrollment_mode'] = getattr(course_enrollment, 'mode', None) context['verified_upgrade_link'] = verified_upgrade_deadline_link(request.user, course=course) context['on_course_outline_page'] = True + context['content_type_gating_enabled'] = ContentTypeGatingConfig.enabled_for_enrollment( + user=request.user, + course_key=course_key + ) html = render_to_string('course_experience/course-outline-fragment.html', context) return Fragment(html)