+
+
+ ${HTML(fragment.body_html())}
+
+
+
diff --git a/lms/djangoapps/courseware/tabs.py b/lms/djangoapps/courseware/tabs.py
index b6b57b8760..22ebe9f357 100644
--- a/lms/djangoapps/courseware/tabs.py
+++ b/lms/djangoapps/courseware/tabs.py
@@ -10,6 +10,7 @@ from django.utils.translation import ugettext as _, ugettext_noop
from courseware.access import has_access
from courseware.entrance_exams import user_must_complete_entrance_exam
from openedx.core.lib.course_tabs import CourseTabPluginManager
+from request_cache.middleware import RequestCache
from student.models import CourseEnrollment
from xmodule.tabs import CourseTab, CourseTabList, key_checker, link_reverse_func
@@ -41,7 +42,8 @@ class CoursewareTab(EnrolledTab):
"""
Returns a function that computes the URL for this tab.
"""
- if waffle.switch_is_active('unified_course_view'):
+ request = RequestCache.get_current_request()
+ if waffle.flag_is_active(request, 'unified_course_view'):
return link_reverse_func('unified_course_view')
else:
return link_reverse_func('courseware')
diff --git a/lms/djangoapps/courseware/views/index.py b/lms/djangoapps/courseware/views/index.py
index 40a36cee54..f7808b41e1 100644
--- a/lms/djangoapps/courseware/views/index.py
+++ b/lms/djangoapps/courseware/views/index.py
@@ -21,12 +21,14 @@ from edxmako.shortcuts import render_to_response, render_to_string
import logging
import newrelic.agent
import urllib
+import waffle
from xblock.fragment import Fragment
from opaque_keys.edx.keys import CourseKey
from openedx.core.djangoapps.lang_pref import LANGUAGE_KEY
from openedx.core.djangoapps.user_api.preferences.api import get_user_preference
from openedx.core.djangoapps.crawlers.models import CrawlersConfig
+from request_cache.middleware import RequestCache
from shoppingcart.models import CourseRegistrationCode
from student.models import CourseEnrollment
from student.views import is_course_blocked
@@ -396,6 +398,7 @@ class CoursewareIndex(View):
Returns and creates the rendering context for the courseware.
Also returns the table of contents for the courseware.
"""
+ request = RequestCache.get_current_request()
courseware_context = {
'csrf': csrf(self.request)['csrf_token'],
'COURSE_TITLE': self.course.display_name_with_default_escaped,
@@ -411,7 +414,8 @@ class CoursewareIndex(View):
'language_preference': self._get_language_preference(),
'disable_optimizely': True,
'section_title': None,
- 'sequence_title': None
+ 'sequence_title': None,
+ 'disable_accordion': waffle.flag_is_active(request, 'unified_course_view')
}
table_of_contents = toc_for_course(
self.effective_user,
diff --git a/lms/djangoapps/courseware/views/views.py b/lms/djangoapps/courseware/views/views.py
index 13ac3f88ef..500a93eaf1 100644
--- a/lms/djangoapps/courseware/views/views.py
+++ b/lms/djangoapps/courseware/views/views.py
@@ -1680,7 +1680,7 @@ class CourseOutlineFragmentView(FragmentView):
return block
- def render_fragment(self, request, course_id=None):
+ def render_fragment(self, request, course_id=None, **kwargs):
"""
Renders the course outline as a fragment.
"""
@@ -1704,5 +1704,5 @@ class CourseOutlineFragmentView(FragmentView):
# Recurse through the block tree, fleshing out each child object
'blocks': self.populate_children(course_block_tree, all_blocks['blocks'])
}
- html = render_to_string('courseware/course-outline.html', context)
+ html = render_to_string('courseware/course_outline.html', context)
return Fragment(html)
diff --git a/lms/static/sass/shared-v2/_course-outline.scss b/lms/static/sass/shared-v2/_course-outline.scss
index 8bf1ea112d..819c1a9ee1 100644
--- a/lms/static/sass/shared-v2/_course-outline.scss
+++ b/lms/static/sass/shared-v2/_course-outline.scss
@@ -1,21 +1,22 @@
.course-outline {
color: $lms-gray;
- ul {
+ ol {
margin: 0 $baseline;
list-style: none;
- > ul {
+ > ol {
@include margin-left($baseline / 2);
}
- li.section-name {
+ div.section-name {
@include padding($baseline * 0.75, $baseline * 0.75, $baseline * 0.75, $baseline / 4);
background-color: $lms-background-color;
border-top: 1px solid $lms-border-color;
+ margin-bottom: $baseline * 0.5;
}
- ul.outline-item {
+ ol.outline-item {
@include margin-left($baseline);
padding-bottom: ($baseline / 2);
diff --git a/lms/templates/courseware/course-outline.html b/lms/templates/courseware/course-outline.html
deleted file mode 100644
index 66af18f66a..0000000000
--- a/lms/templates/courseware/course-outline.html
+++ /dev/null
@@ -1,29 +0,0 @@
-## mako
-
-<%namespace name='static' file='../static_content.html'/>
-
-<%!
-from django.utils.translation import ugettext as _
-%>
-
-<%static:require_module_async module_name="js/courseware/course_outline_factory" class_name="CourseOutlineFactory">
- CourseOutlineFactory('.block-tree');
-%static:require_module_async>
-
-