diff options
author | Étienne Loks <etienne.loks@proxience.com> | 2015-12-14 18:58:00 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@proxience.com> | 2015-12-14 18:58:00 +0100 |
commit | 5b5497b31e5796b1fecfc0641e337ffb8d7792a1 (patch) | |
tree | 9fe81e9e3a3eb84b1abc3fa799850f6116c0e0de /archaeological_files | |
parent | 5f26fc4dca4e150df7977aa843968191a036c8ed (diff) | |
download | Ishtar-5b5497b31e5796b1fecfc0641e337ffb8d7792a1.tar.bz2 Ishtar-5b5497b31e5796b1fecfc0641e337ffb8d7792a1.zip |
Adapt menus and urls for right management - check_rights_condition for filtering wizard steps
Diffstat (limited to 'archaeological_files')
-rw-r--r-- | archaeological_files/ishtar_menu.py | 114 | ||||
-rw-r--r-- | archaeological_files/urls.py | 33 |
2 files changed, 85 insertions, 62 deletions
diff --git a/archaeological_files/ishtar_menu.py b/archaeological_files/ishtar_menu.py index 4458c5b8f..b120d18d1 100644 --- a/archaeological_files/ishtar_menu.py +++ b/archaeological_files/ishtar_menu.py @@ -19,66 +19,74 @@ from django.utils.translation import ugettext_lazy as _ -from archaeological_operations.models import Operation from ishtar_common.menu_base import SectionItem, MenuItem from archaeological_operations.models import AdministrativeAct import models +# be carreful: each access_controls must be relevant with check_rights in urls + MENU_SECTIONS = [ - (20, SectionItem('file_management', _(u"Archaeological file"), - childs=[ - MenuItem('file_search', _(u"Search"), - model=models.File, - access_controls=['view_file', 'view_own_file']), - MenuItem('file_creation', _(u"Creation"), - model=models.File, - access_controls=['add_file', 'add_own_file']), - MenuItem('file_modification', _(u"Modification"), - model=models.File, - access_controls=['change_file', 'change_own_file']), - MenuItem('file_closing', _(u"Closing"), - model=models.File, - access_controls=['close_file']), - MenuItem('file_deletion', _(u"Deletion"), - model=models.File, - access_controls=['delete_file', 'delete_own_file']), - SectionItem('admin_act_files', _(u"Administrative act"), - childs=[ - MenuItem('file_administrativeactfil_search', - _(u"Search"), - model=AdministrativeAct, - access_controls=['change_file', 'change_own_file']), - MenuItem('file_administrativeactfil', - _(u"Add"), - model=AdministrativeAct, - access_controls=['change_file', 'change_own_file']), - MenuItem('file_administrativeactfil_modification', - _(u"Modification"), - model=AdministrativeAct, - access_controls=['change_file', 'change_own_file']), - MenuItem('file_administrativeactfil_deletion', - _(u"Deletion"), - model=AdministrativeAct, - access_controls=['delete_file', 'delete_own_file']), - MenuItem('file_administrativeact_document', - _(u"Documents"), - model=AdministrativeAct, - access_controls=['change_file', 'change_own_file']), - ],), - ]), - ), - (100, SectionItem('dashboard', _(u"Dashboard"), - childs=[ - MenuItem('dashboard_main', _(u"General informations"), - model=models.File, - access_controls=['change_file', 'change_own_file']), - MenuItem('dashboard_file', _(u"Archaeological files"), - model=models.File, - access_controls=['change_file', 'change_own_file']), - ]), - ), + (20, + SectionItem( + 'file_management', _(u"Archaeological file"), + childs=[ + MenuItem( + 'file_search', _(u"Search"), + model=models.File, + access_controls=['view_file', 'view_own_file']), + MenuItem( + 'file_creation', _(u"Creation"), + model=models.File, + access_controls=['add_file', 'add_own_file']), + MenuItem( + 'file_modification', _(u"Modification"), + model=models.File, + access_controls=['change_file', 'change_own_file']), + MenuItem( + 'file_closing', _(u"Closing"), + model=models.File, + access_controls=['close_file']), + MenuItem( + 'file_deletion', _(u"Deletion"), + model=models.File, + access_controls=['delete_file', 'delete_own_file']), + SectionItem( + 'admin_act_files', _(u"Administrative act"), + childs=[ + MenuItem('file_administrativeactfil_search', + _(u"Search"), + model=AdministrativeAct, + access_controls=['change_administrativeact']), + MenuItem('file_administrativeactfil', + _(u"Add"), + model=AdministrativeAct, + access_controls=['change_administrativeact']), + MenuItem('file_administrativeactfil_modification', + _(u"Modification"), + model=AdministrativeAct, + access_controls=['change_administrativeact']), + MenuItem('file_administrativeactfil_deletion', + _(u"Deletion"), + model=AdministrativeAct, + access_controls=['change_administrativeact']), + MenuItem('file_administrativeact_document', + _(u"Documents"), + model=AdministrativeAct, + access_controls=['change_administrativeact']), + ],)]),), + (100, + SectionItem( + 'dashboard', _(u"Dashboard"), + childs=[MenuItem('dashboard_main', _(u"General informations"), + model=models.File, + access_controls=['change_file', 'change_own_file']), + MenuItem('dashboard_file', _(u"Archaeological files"), + model=models.File, + access_controls=['change_file', 'change_own_file']), + ]), + ), ] """ SectionItem('dashboard', _(u"Dashboard"), diff --git a/archaeological_files/urls.py b/archaeological_files/urls.py index 30f50263a..1fcf71531 100644 --- a/archaeological_files/urls.py +++ b/archaeological_files/urls.py @@ -19,33 +19,48 @@ from django.conf.urls.defaults import * +from ishtar_common.wizards import check_rights import views +# be carreful: each check_rights must be relevant with ishtar_menu + # forms: urlpatterns = patterns( '', url(r'file_administrativeactfil_search/(?P<step>.+)?$', - views.file_administrativeactfile_search_wizard, + check_rights(['change_administrativeact'])( + views.file_administrativeactfile_search_wizard), name='file_administrativeactfile_search'), url(r'file_administrativeactfil/(?P<step>.+)?$', - views.file_administrativeactfile_wizard, + check_rights(['change_administrativeact'])( + views.file_administrativeactfile_wizard), name='file_administrativeactfile'), url(r'file_administrativeactfil_deletion/(?P<step>.+)?$', - views.file_administrativeactfile_deletion_wizard, + check_rights(['change_administrativeact'])( + views.file_administrativeactfile_deletion_wizard), name='file_administrativeactfile_deletion'), url(r'file_administrativeactfil_modification/(?P<step>.+)?$', - views.file_administrativeactfile_modification_wizard, + check_rights(['change_administrativeact'])( + views.file_administrativeactfile_modification_wizard), name='file_administrativeactfile_modification'), - url(r'file_search/(?P<step>.+)?$', views.file_search_wizard, + url(r'file_search/(?P<step>.+)?$', + check_rights(['view_file', 'view_own_file'])( + views.file_search_wizard), name='file_search'), url(r'file_creation/(?P<step>.+)?$', - views.file_creation_wizard, name='file_creation'), + check_rights(['add_file'])( + views.file_creation_wizard), name='file_creation'), url(r'file_modification/(?P<step>.+)?$', - views.file_modification_wizard, name='file_modification'), + check_rights(['change_file', 'change_own_file'])( + views.file_modification_wizard), name='file_modification'), url(r'file_modify/(?P<pk>.+)/$', views.file_modify, name='file_modify'), - url(r'file_closing/(?P<step>.+)?$', views.file_closing_wizard, + url(r'file_closing/(?P<step>.+)?$', + check_rights(['change_file'])( + views.file_closing_wizard), name='file_closing'), - url(r'file_deletion/(?P<step>.+)?$', views.file_deletion_wizard, + url(r'file_deletion/(?P<step>.+)?$', + check_rights(['delete_file', 'delete_own_file'])( + views.file_deletion_wizard), name='file_deletion'), ) |