diff --git a/lms/djangoapps/course_api/blocks/api.py b/lms/djangoapps/course_api/blocks/api.py index a99fc4121d..905e1bd9d7 100644 --- a/lms/djangoapps/course_api/blocks/api.py +++ b/lms/djangoapps/course_api/blocks/api.py @@ -26,7 +26,7 @@ def get_blocks( student_view_data=None, return_type='dict', block_types_filter=None, - hide_access_denials=False, + hide_access_denials=True, ): """ Return a serialized representation of the course blocks. diff --git a/openedx/features/course_experience/utils.py b/openedx/features/course_experience/utils.py index 3637b4731b..8b74b01e30 100644 --- a/openedx/features/course_experience/utils.py +++ b/openedx/features/course_experience/utils.py @@ -90,12 +90,13 @@ def get_course_outline_block_tree(request, course_id, user=None): latest_completion, block=block['children'][idx] ) - if block['children'][idx].get('resume_block') is True: + if block['children'][idx]['resume_block'] is True: block['resume_block'] = True completable_blocks = [child for child in block['children'] - if child.get('type') != 'discussion'] - if all(child.get('complete') for child in completable_blocks): + if child['type'] != 'discussion'] + if len([child['complete'] for child in block['children'] + if child['complete']]) == len(completable_blocks): block['complete'] = True def mark_last_accessed(user, course_key, block): @@ -172,7 +173,7 @@ def get_resume_block(block): Gets the deepest block marked as 'resume_block'. """ - if block.get('authorization_denial_reason') or not block['resume_block']: + if not block['resume_block']: return None if not block.get('children'): return block diff --git a/openedx/features/course_experience/views/course_outline.py b/openedx/features/course_experience/views/course_outline.py index d63ce19411..3b895c13dc 100644 --- a/openedx/features/course_experience/views/course_outline.py +++ b/openedx/features/course_experience/views/course_outline.py @@ -76,13 +76,12 @@ class CourseOutlineFragmentView(EdxFragmentView): if xblock_display_names is None: xblock_display_names = {} - if not course_block_tree.get('authorization_denial_reason'): - if course_block_tree.get('id'): - xblock_display_names[course_block_tree['id']] = course_block_tree['display_name'] + if course_block_tree.get('id'): + xblock_display_names[course_block_tree['id']] = course_block_tree['display_name'] - if course_block_tree.get('children'): - for child in course_block_tree['children']: - self.create_xblock_id_and_name_dict(child, xblock_display_names) + if course_block_tree.get('children'): + for child in course_block_tree['children']: + self.create_xblock_id_and_name_dict(child, xblock_display_names) return xblock_display_names