diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-06-27 14:58:06 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-06-27 14:58:06 +0200 |
commit | 51517b852e4548257525462b6c5184c6e006d3a4 (patch) | |
tree | f6429135aa9a49e6eb3ec904024a52ae926ef19c /ishtar_common/menus.py | |
parent | 25a57164408320e200340d236f1a4bb159accccf (diff) | |
download | Ishtar-51517b852e4548257525462b6c5184c6e006d3a4.tar.bz2 Ishtar-51517b852e4548257525462b6c5184c6e006d3a4.zip |
Fix cache menu issue
Diffstat (limited to 'ishtar_common/menus.py')
-rw-r--r-- | ishtar_common/menus.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/ishtar_common/menus.py b/ishtar_common/menus.py index 74ef714eb..6d51323ab 100644 --- a/ishtar_common/menus.py +++ b/ishtar_common/menus.py @@ -21,6 +21,7 @@ Menus """ +from copy import deepcopy import datetime from django.conf import settings @@ -55,7 +56,7 @@ for section_item in __section_items: class Menu: - childs = _section_items + ref_childs = _section_items def __init__(self, user, current_action=None, session=None): self.user = user @@ -129,10 +130,10 @@ class Menu: self.set_menu_updated_key(cache_key, user_id) self.items = {} self.items_by_idx = {} - childs = self.childs[:] - for idx, main_menu in enumerate(reversed(self.childs)): + childs = deepcopy(self.ref_childs) + for idx, main_menu in enumerate(reversed(childs)): if not main_menu.can_be_available(self.user, self.session): - childs.pop(len(self.childs) - idx - 1) + childs.pop(len(self.ref_childs) - idx - 1) continue self.items_by_idx[main_menu.idx] = main_menu sub_childs = main_menu.childs[:] |