summaryrefslogtreecommitdiff
path: root/ishtar_common/menus.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2012-10-20 15:25:07 +0200
committerÉtienne Loks <etienne.loks@peacefrogs.net>2012-10-20 15:25:07 +0200
commitdc7abf75836b59ad33d92da04fe727320400d512 (patch)
treeb26e820671aa6af552a4b03147c44a9d2aa84be8 /ishtar_common/menus.py
parent029d08540f66524c371ae87ede5c1281fbe2c568 (diff)
downloadIshtar-dc7abf75836b59ad33d92da04fe727320400d512.tar.bz2
Ishtar-dc7abf75836b59ad33d92da04fe727320400d512.zip
Djangoization - Major refactoring (step 3)
Reorganization of views, urls, menus, admin, forms. Changes on models.
Diffstat (limited to 'ishtar_common/menus.py')
-rw-r--r--ishtar_common/menus.py132
1 files changed, 18 insertions, 114 deletions
diff --git a/ishtar_common/menus.py b/ishtar_common/menus.py
index c55e2a328..3737846b9 100644
--- a/ishtar_common/menus.py
+++ b/ishtar_common/menus.py
@@ -47,127 +47,31 @@ _extra_menus = [(
]
)]
+# collect menu from INSTALLED_APPS
for app in settings.INSTALLED_APPS:
+ print app
+ if app == 'ishtar_common':
+ continue
mod = __import__(app, fromlist=['ishtar_menu'])
if hasattr(mod, 'ishtar_menu'):
menu = getattr(mod, 'ishtar_menu')
- _extra_menus.append((menu.ORDER, menu.MENU_SECTIONS))
+ _extra_menus += menu.MENU_SECTIONS
-_section_items = []
-for order, menu in sorted(_extra_menus, key=lambda x:x[0]):
- _section_items += menu
+# sort
+__section_items = [menu for order, menu in sorted(_extra_menus,
+ key=lambda x:x[0])]
+
+# regroup menus
+_section_items, __keys = [], []
+for section_item in _section_items:
+ if section_item.idx not in __keys:
+ __keys.append(section_item.idx)
+ _section_items.append(section_item)
+ continue
+ _section_items[_section_items.index(section_item.idx)].childs.append(
+ section_item.childs)
"""
- SectionItem('record_management', _(u"Context record"),
- childs=[
- MenuItem('record_search', _(u"Search"),
- model=models.ContextRecord,
- access_controls=['view_contextrecord',
- 'view_own_contextrecord']),
- MenuItem('record_creation', _(u"Creation"),
- model=models.ContextRecord,
- access_controls=['add_contextrecord',
- 'add_own_contextrecord']),
- MenuItem('record_modification', _(u"Modification"),
- model=models.ContextRecord,
- access_controls=['change_contextrecord',
- 'change_own_contextrecord']),
- MenuItem('record_deletion', _(u"Deletion"),
- model=models.ContextRecord,
- access_controls=['delete_contextrecord',
- 'delete_own_contextrecord']),
- ]),
- SectionItem('item_management', _(u"Item"),
- childs=[
- MenuItem('item_search', _(u"Search"),
- model=models.Item,
- access_controls=['view_item',
- 'view_own_item']),
- MenuItem('item_creation', _(u"Creation"),
- model=models.Item,
- access_controls=['add_item',
- 'add_own_item']),
- MenuItem('item_modification', _(u"Modification"),
- model=models.Item,
- access_controls=['change_item',
- 'change_own_item']),
- MenuItem('warehouse_packaging', _(u"Packaging"),
- model=models.Treatment,
- access_controls=['add_treatment', 'add_own_treatment']),
- #MenuItem('treatment_creation', _(u"Add a treatment"),
- # model=models.Treatment,
- # access_controls=['add_treatment',
- # 'add_own_treatment']),
- ]),
- SectionItem('source_management', _(u"Documentation"),
- childs=[
- SectionItem('admin_add_sources', _(u"Add"),
- childs=[
- MenuItem('operation_source_creation',
- _(u"Related to an operation"),
- model=models.OperationSource,
- access_controls=['change_operation',
- 'change_own_operation']),
- MenuItem('record_source_creation',
- _(u"Related to a context record"),
- model=models.ContextRecordSource,
- access_controls=['change_contextrecord',
- 'change_own_contextrecord']),
- MenuItem('item_source_creation',
- _(u"Related to an archaelogical item"),
- model=models.ItemSource,
- access_controls=['change_item',
- 'change_own_item']),
- ]),
- SectionItem('admin_mod_sources', _(u"Modify"),
- childs=[
- MenuItem('operation_source_modification',
- _(u"Related to an operation"),
- model=models.OperationSource,
- access_controls=['change_operation',
- 'change_own_operation']),
- MenuItem('record_source_modification',
- _(u"Related to a context record"),
- model=models.ContextRecordSource,
- access_controls=['change_contextrecord',
- 'change_own_contextrecord']),
- MenuItem('item_source_modification',
- _(u"Related to an archaelogical item"),
- model=models.ItemSource,
- access_controls=['change_item',
- 'change_own_item']),
- ]),
- SectionItem('admin_del_sources', _(u"Deletion"),
- childs=[
- MenuItem('operation_source_deletion',
- _(u"Related to an operation"),
- model=models.OperationSource,
- access_controls=['change_operation',
- 'change_own_operation']),
- MenuItem('record_source_deletion',
- _(u"Related to a context record"),
- model=models.ContextRecordSource,
- access_controls=['change_contextrecord',
- 'change_own_contextrecord']),
- MenuItem('item_source_deletion',
- _(u"Related to an archaelogical item"),
- model=models.ItemSource,
- access_controls=['change_item',
- 'change_own_item']),
- ]),
- ]),
- #SectionItem('warehouse', _(u"Warehouse"),
- # childs=[
- # MenuItem('warehouse_inventory', _(u"Inventory"),
- # model=models.Warehouse,
- # access_controls=['change_warehouse',]),
- # MenuItem('warehouse_recording', _(u"Recording"),
- # model=models.Treatment,
- # access_controls=['add_treatment', 'add_own_treatment']),
- # MenuItem('warehouse_lend', _(u"Lending"),
- # model=models.Treatment,
- # access_controls=['add_treatment', 'add_own_treatment']),
- # ]),
SectionItem('dashboard', _(u"Dashboard"),
childs=[
MenuItem('dashboard_main', _(u"General informations"),