Skip to content

Commit 17c8894

Browse files
committed
Extract common filtering logic.
1 parent 4d77d0f commit 17c8894

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

menu/menu.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -114,16 +114,15 @@ def process(c, request, name=None):
114114
if curitem is not None:
115115
curitem.selected = True
116116

117+
def filter_visible(items):
118+
return [filter_visible_children(item) for item in items if item.visible]
119+
117120
def filter_visible_children(item):
118-
item.children = [filter_visible_children(child) for child in item.children if child.visible]
121+
item.children = filter_visible(item.children)
119122
return item
120123

121124
# return only visible items
122-
visible = [
123-
filter_visible_children(item)
124-
for item in c.items[name]
125-
if item.visible
126-
]
125+
visible = filter_visible(c.items[name])
127126

128127
# determine if we should apply 'selected' to parents when one of their
129128
# children is the 'selected' menu

0 commit comments

Comments
 (0)