From b64664932db770a6f991039f633699d9679ee2f0 Mon Sep 17 00:00:00 2001 From: Matthew Piatetsky Date: Fri, 26 Apr 2019 13:19:13 -0400 Subject: [PATCH] Revert "Merge pull request #20272 from cpennington/revmi-34-recheck-access" This reverts commit 5d99714aed99b833a2043422b5b5436640c5875b, reversing changes made to 5424155cd06329d7d0adb4bec7bad5b87f0c64b8. --- lms/djangoapps/courseware/module_render.py | 30 +++++++------------ lms/djangoapps/courseware/views/views.py | 8 +---- .../content_type_gating/tests/test_access.py | 3 +- 3 files changed, 12 insertions(+), 29 deletions(-) diff --git a/lms/djangoapps/courseware/module_render.py b/lms/djangoapps/courseware/module_render.py index a75814094e..4159a4ad3e 100644 --- a/lms/djangoapps/courseware/module_render.py +++ b/lms/djangoapps/courseware/module_render.py @@ -291,7 +291,7 @@ def _add_timed_exam_info(user, course, section, section_context): def get_module(user, request, usage_key, field_data_cache, position=None, log_if_not_found=True, wrap_xmodule_display=True, grade_bucket_type=None, depth=0, - static_asset_path='', course=None, will_recheck_access=False): + static_asset_path='', course=None): """ Get an instance of the xmodule class identified by location, setting the state based on an existing StudentModule, or creating one if none @@ -326,7 +326,7 @@ def get_module(user, request, usage_key, field_data_cache, wrap_xmodule_display=wrap_xmodule_display, grade_bucket_type=grade_bucket_type, static_asset_path=static_asset_path, - course=course, will_recheck_access=will_recheck_access) + course=course) except ItemNotFoundError: if log_if_not_found: log.debug("Error in get_module: ItemNotFoundError") @@ -393,7 +393,7 @@ def get_xqueue_callback_url_prefix(request): def get_module_for_descriptor(user, request, descriptor, field_data_cache, course_key, position=None, wrap_xmodule_display=True, grade_bucket_type=None, static_asset_path='', disable_staff_debug_info=False, - course=None, will_recheck_access=False): + course=None): """ Implements get_module, extracting out the request-specific functionality. @@ -425,8 +425,7 @@ def get_module_for_descriptor(user, request, descriptor, field_data_cache, cours user_location=user_location, request_token=xblock_request_token(request), disable_staff_debug_info=disable_staff_debug_info, - course=course, - will_recheck_access=will_recheck_access, + course=course ) @@ -445,8 +444,7 @@ def get_module_system_for_user( static_asset_path='', user_location=None, disable_staff_debug_info=False, - course=None, - will_recheck_access=False + course=None ): """ Helper function that returns a module system and student_data bound to a user and a descriptor. @@ -517,7 +515,7 @@ def get_module_system_for_user( user_location=user_location, request_token=request_token, course=course, - will_recheck_access=will_recheck_access, + will_recheck_access=True, ) def get_event_handler(event_type): @@ -875,8 +873,7 @@ def get_module_for_descriptor_internal(user, descriptor, student_data, course_id user_location=user_location, request_token=request_token, disable_staff_debug_info=disable_staff_debug_info, - course=course, - will_recheck_access=will_recheck_access, + course=course ) descriptor.bind_for_student( @@ -904,6 +901,7 @@ def get_module_for_descriptor_internal(user, descriptor, student_data, course_id not access and will_recheck_access and (access.user_message or access.user_fragment) + and isinstance(access, IncorrectPartitionGroupError) ) if access or caller_will_handle_access_error: return descriptor @@ -911,7 +909,7 @@ def get_module_for_descriptor_internal(user, descriptor, student_data, course_id return descriptor -def load_single_xblock(request, user_id, course_id, usage_key_string, course=None, will_recheck_access=False): +def load_single_xblock(request, user_id, course_id, usage_key_string, course=None): """ Load a single XBlock identified by usage_key_string. """ @@ -925,15 +923,7 @@ def load_single_xblock(request, user_id, course_id, usage_key_string, course=Non modulestore().get_item(usage_key), depth=0, ) - instance = get_module( - user, - request, - usage_key, - field_data_cache, - grade_bucket_type='xqueue', - course=course, - will_recheck_access=will_recheck_access - ) + instance = get_module(user, request, usage_key, field_data_cache, grade_bucket_type='xqueue', course=course) if instance is None: msg = u"No module {0} for user {1}--access denied?".format(usage_key_string, user) log.debug(msg) diff --git a/lms/djangoapps/courseware/views/views.py b/lms/djangoapps/courseware/views/views.py index 175e8cf41f..ad4b361204 100644 --- a/lms/djangoapps/courseware/views/views.py +++ b/lms/djangoapps/courseware/views/views.py @@ -317,13 +317,7 @@ def course_info(request, course_id): course.id, request.user, course, depth=2 ) course_module = get_module_for_descriptor( - user, - request, - course, - field_data_cache, - course.id, - course=course, - will_recheck_access=True, + user, request, course, field_data_cache, course.id, course=course ) chapter_module = get_current_child(course_module) if chapter_module is not None: diff --git a/openedx/features/content_type_gating/tests/test_access.py b/openedx/features/content_type_gating/tests/test_access.py index 2236c6c552..1e0afac189 100644 --- a/openedx/features/content_type_gating/tests/test_access.py +++ b/openedx/features/content_type_gating/tests/test_access.py @@ -87,8 +87,7 @@ def _get_fragment_from_block(block, user_id, course, request_factory, mock_get_c user_id=user_id, course_id=unicode(course.id), usage_key_string=unicode(course.scope_ids.usage_id), - course=course, - will_recheck_access=True, + course=course ) runtime = vertical_xblock.runtime