Files
mayan-edms/mayan/apps/cabinets/widgets.py
Roberto Rosario ff703b32a2 Integrate the Cabinets app into the core.
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2017-03-09 01:59:13 -04:00

29 lines
721 B
Python

from __future__ import unicode_literals
def jstree_data(node, selected_node):
result = []
result.append('{')
result.append('"text": "{}",'.format(node.label))
result.append(
'"state": {{ "opened": true, "selected": {} }},'.format(
'true' if node == selected_node else 'false'
)
)
result.append(
'"data": {{ "href": "{}" }},'.format(node.get_absolute_url())
)
children = node.get_children().order_by('label',)
if children:
result.append('"children" : [')
for child in children:
result.extend(jstree_data(node=child, selected_node=selected_node))
result.append(']')
result.append('},')
return result