Merge pull request #309 from MITx/feature/tutorials_fix
Add optional hide_from_toc attribute to XML elements
This commit is contained in:
@@ -104,7 +104,8 @@ class HTMLSnippet(object):
|
||||
"""
|
||||
Return the html used to display this snippet
|
||||
"""
|
||||
raise NotImplementedError("get_html() must be provided by specific modules")
|
||||
raise NotImplementedError("get_html() must be provided by specific modules - not present in {0}"
|
||||
.format(self.__class__))
|
||||
|
||||
|
||||
class XModule(HTMLSnippet):
|
||||
|
||||
@@ -88,7 +88,7 @@ class XmlDescriptor(XModuleDescriptor):
|
||||
# The attributes will be removed from the definition xml passed
|
||||
# to definition_from_xml, and from the xml returned by definition_to_xml
|
||||
metadata_attributes = ('format', 'graceperiod', 'showanswer', 'rerandomize',
|
||||
'start', 'due', 'graded', 'name', 'slug')
|
||||
'start', 'due', 'graded', 'name', 'slug', 'hide_from_toc')
|
||||
|
||||
# A dictionary mapping xml attribute names to functions of the value
|
||||
# that return the metadata key and value
|
||||
|
||||
@@ -56,11 +56,13 @@ def toc_for_course(user, request, course, active_chapter, active_section):
|
||||
|
||||
active = (chapter.metadata.get('display_name') == active_chapter and
|
||||
section.metadata.get('display_name') == active_section)
|
||||
hide_from_toc = section.metadata.get('hide_from_toc', 'false').lower() == 'true'
|
||||
|
||||
sections.append({'name': section.metadata.get('display_name'),
|
||||
'format': section.metadata.get('format', ''),
|
||||
'due': section.metadata.get('due', ''),
|
||||
'active': active})
|
||||
if not hide_from_toc:
|
||||
sections.append({'name': section.metadata.get('display_name'),
|
||||
'format': section.metadata.get('format', ''),
|
||||
'due': section.metadata.get('due', ''),
|
||||
'active': active})
|
||||
|
||||
chapters.append({'name': chapter.metadata.get('display_name'),
|
||||
'sections': sections,
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
<%def name="make_chapter(chapter)">
|
||||
<h3><a href="#">${chapter['name']}</a></h3>
|
||||
|
||||
<ul>
|
||||
% for section in chapter['sections']:
|
||||
<ul>
|
||||
% for section in chapter['sections']:
|
||||
<li${' class="active"' if 'active' in section and section['active'] else ''}>
|
||||
<a href="${reverse('courseware_section', args=[course_id] + format_url_params([chapter['name'], section['name']]))}">
|
||||
<p>${section['name']}
|
||||
@@ -12,11 +12,11 @@
|
||||
${section['format']} ${"due " + section['due'] if 'due' in section and section['due'] != '' else ''}
|
||||
</span>
|
||||
</p>
|
||||
|
||||
</a>
|
||||
% endfor
|
||||
</ul>
|
||||
</%def>
|
||||
</li>
|
||||
% endfor
|
||||
</ul>
|
||||
</%def>
|
||||
|
||||
% for chapter in toc:
|
||||
${make_chapter(chapter)}
|
||||
|
||||
Reference in New Issue
Block a user