Commit 328b8fc9 by Bessie Steinberg Committed by Bill Filler

add locks to subsections that need prereqs agnostic of whether the prereq is met

parent 4c77cbb2
...@@ -35,14 +35,17 @@ from openedx.core.djangolib.markup import HTML, Text ...@@ -35,14 +35,17 @@ from openedx.core.djangolib.markup import HTML, Text
> >
<div class="subsection-text"> <div class="subsection-text">
## Subsection title ## Subsection title
<span class="subsection-title">${ subsection['display_name'] }</span> <span class="subsection-title">
<span class="subsection-title-name">
<div class="details"> ${ subsection['display_name'] }
</span>
% if subsection['id'] in milestones: % if subsection['id'] in milestones:
<span class="subtitle"> <span class="menu-icon icon fa ${ 'fa-lock' if milestones[subsection['id']]['completed_prereqs'] else 'fa-unlock' }"
THIS IS GATED CONTENT! aria-hidden="true">
</span> </span>
% endif % endif
<div class="details">
## There are behavior differences between rendering of subsections which have ## There are behavior differences between rendering of subsections which have
## exams (timed, graded, etc) and those that do not. ## exams (timed, graded, etc) and those that do not.
## ##
......
...@@ -11,7 +11,7 @@ from courseware.courses import get_course_overview_with_access ...@@ -11,7 +11,7 @@ from courseware.courses import get_course_overview_with_access
from openedx.core.djangoapps.plugin_api.views import EdxFragmentView from openedx.core.djangoapps.plugin_api.views import EdxFragmentView
from ..utils import get_course_outline_block_tree from ..utils import get_course_outline_block_tree
from util.milestones_helpers import get_course_content_milestones, get_course_content_milestones_by_course from util.milestones_helpers import get_course_content_milestones_by_course, milestones_achieved_by_user
class CourseOutlineFragmentView(EdxFragmentView): class CourseOutlineFragmentView(EdxFragmentView):
...@@ -25,22 +25,24 @@ class CourseOutlineFragmentView(EdxFragmentView): ...@@ -25,22 +25,24 @@ class CourseOutlineFragmentView(EdxFragmentView):
""" """
course_key = CourseKey.from_string(course_id) course_key = CourseKey.from_string(course_id)
course_overview = get_course_overview_with_access(request.user, 'load', course_key, check_if_enrolled=True) course_overview = get_course_overview_with_access(request.user, 'load', course_key, check_if_enrolled=True)
course_block_tree = get_course_outline_block_tree(request, course_id) course_block_tree = get_course_outline_block_tree(request, course_id)
if not course_block_tree: if not course_block_tree:
return None return None
completed_milestones = milestones_achieved_by_user(request.user, course_id)
milestones = get_course_content_milestones_by_course( milestones = get_course_content_milestones_by_course(
course_id=course_key, course_id=course_key,
relationship='requires', relationship='requires',
user_id=request.user.id) user_id=request.user.id)
content_block_milestones = [] content_block_milestones = {}
for milestone in milestones: for milestone in milestones:
content_block_milestones.append( milestone['content_id'] ) content_block_milestones[ milestone['content_id'] ] = {
'completed_prereqs': False
}
context = { context = {
'csrf': csrf(request)['csrf_token'], 'csrf': csrf(request)['csrf_token'],
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment