%!
import pprint as pp
%>
<%
globalCounter = {}
def _recurseModuleTree(data, depth=0):
output = []
for i, mod in enumerate(data):
# assign a unique DOM ID to this module
globalCounter.setdefault(mod['className'], -1)
globalCounter[mod['className']] += 1
output.append('
')
output.append('
')
output.append(mod['className'])
output.append(' (DOM ID=%s_%s_%s_%s)' % (mod['className'], globalCounter[mod['className']], depth,i))
output.append('
')
printed = mod.copy()
if 'children' in printed:
del printed['children']
output.append('
')
output.append(pp.pformat(printed))
output.append('
')
if mod.get('children'):
output.append(_recurseModuleTree(mod['children'], depth=depth+1))
output.append('
')
return '\n'.join(output)
def renderModuleTree():
modules = viewConfig['modules']
return _recurseModuleTree(modules)
def renderParsedTree():
return pp.pformat(modules)
%>
<%inherit file="//layout/base.html" />
<%def name="css()">
%def>
${renderModuleTree()}