Add new course dates fragment.

Also add it to the course home page.
This commit is contained in:
Diana Huang
2017-04-26 14:16:24 -04:00
committed by Andy Armstrong
parent 97c084514f
commit e12a704cea
23 changed files with 466 additions and 317 deletions

View File

@@ -0,0 +1,27 @@
"""
Fragment for rendering the course dates sidebar.
"""
from django.template.loader import render_to_string
from opaque_keys.edx.keys import CourseKey
from web_fragments.fragment import Fragment
from openedx.core.djangoapps.plugin_api.views import EdxFragmentView
from courseware.courses import get_course_with_access, get_course_date_blocks
class CourseDatesFragmentView(EdxFragmentView):
"""
A fragment to important dates within a course.
"""
def render_to_fragment(self, request, course_id=None, **kwargs):
"""
Render the course dates fragment.
"""
course_key = CourseKey.from_string(course_id)
course = get_course_with_access(request.user, 'load', course_key, check_if_enrolled=False)
course_date_blocks = get_course_date_blocks(course, request.user)
context = {
'course_date_blocks': course_date_blocks
}
html = render_to_string('course_experience/course-dates-fragment.html', context)
return Fragment(html)