Commit 1a6845b0 by Chris Dodge

optimize slightly, allow caller to pass in the list of units in a subsection, so…

optimize slightly, allow caller to pass in the list of units in a subsection, so we don't have to refetch
parent a88bb7ca
...@@ -215,7 +215,8 @@ def edit_subsection(request, location): ...@@ -215,7 +215,8 @@ def edit_subsection(request, location):
if key not in ['display_name', 'start', 'due', 'format'] and key not in item.system_metadata_fields) if key not in ['display_name', 'start', 'due', 'format'] and key not in item.system_metadata_fields)
can_view_live = False can_view_live = False
for unit in item.get_children(): subsection_units = item.get_children()
for unit in subsection_units:
state = compute_unit_state(unit) state = compute_unit_state(unit)
if state == UnitState.public or state == UnitState.draft: if state == UnitState.public or state == UnitState.draft:
can_view_live = True can_view_live = True
...@@ -229,6 +230,7 @@ def edit_subsection(request, location): ...@@ -229,6 +230,7 @@ def edit_subsection(request, location):
'preview_link': preview_link, 'preview_link': preview_link,
'parent_item': parent, 'parent_item': parent,
'policy_metadata' : policy_metadata, 'policy_metadata' : policy_metadata,
'subsection_units' : subsection_units,
'can_view_live' : can_view_live 'can_view_live' : can_view_live
}) })
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
</div> </div>
<div class="unit-list"> <div class="unit-list">
<label>Units:</label> <label>Units:</label>
${units.enum_units(subsection)} ${units.enum_units(subsection, subsection_units=subsection_units)}
</div> </div>
<div> <div>
<label>Policy:</label> <label>Policy:</label>
......
...@@ -4,9 +4,13 @@ ...@@ -4,9 +4,13 @@
<!-- <!--
This def will enumerate through a passed in subsection and list all of the units This def will enumerate through a passed in subsection and list all of the units
--> -->
<%def name="enum_units(subsection, actions=True, selected=None, sortable=True)"> <%def name="enum_units(subsection, actions=True, selected=None, sortable=True, subsection_units=None)">
<ol ${'class="sortable-unit-list"' if sortable else ''} data-subsection-id="${subsection.location}"> <ol ${'class="sortable-unit-list"' if sortable else ''} data-subsection-id="${subsection.location}">
% for unit in subsection.get_children(): <%
if subsection_units is None:
subsection_units = subsection.get_children()
%>
% for unit in subsection_units:
<li class="leaf unit" data-id="${unit.location}"> <li class="leaf unit" data-id="${unit.location}">
<% <%
unit_state = compute_unit_state(unit) unit_state = compute_unit_state(unit)
......
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