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 /ishtar_common/urls.py | |
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 'ishtar_common/urls.py')
-rw-r--r-- | ishtar_common/urls.py | 63 |
1 files changed, 43 insertions, 20 deletions
diff --git a/ishtar_common/urls.py b/ishtar_common/urls.py index 70109a2f3..036494354 100644 --- a/ishtar_common/urls.py +++ b/ishtar_common/urls.py @@ -24,9 +24,9 @@ from django.conf.urls.static import static from menus import menu from ishtar_common import views +from ishtar_common.wizards import check_rights -urlpatterns, actions = [], [] - +# be carreful: each check_rights must be relevant with ishtar_menu # forms urlpatterns = patterns( @@ -35,48 +35,71 @@ urlpatterns = patterns( url(r'^i18n/', include('django.conf.urls.i18n')), # General url(r'person_search/(?P<step>.+)?$', - views.person_search_wizard, name='person_search'), + check_rights(['add_person'])( + views.person_search_wizard), name='person_search'), url(r'person_creation/(?P<step>.+)?$', - views.person_creation_wizard, name='person_creation'), + check_rights(['add_person'])( + views.person_creation_wizard), name='person_creation'), url(r'person_modification/(?P<step>.+)?$', - views.person_modification_wizard, name='person_modification'), + check_rights(['change_person', 'change_own_person'])( + views.person_modification_wizard), name='person_modification'), url(r'person_deletion/(?P<step>.+)?$', - views.person_deletion_wizard, name='person_deletion'), + check_rights(['change_person', 'change_own_person'])( + views.person_deletion_wizard), name='person_deletion'), url(r'^person-edit/$', - views.PersonCreate.as_view(), name='person_create'), + check_rights(['add_person'])( + views.PersonCreate.as_view()), name='person_create'), url(r'^person-edit/(?P<pk>\d+)$', - views.PersonEdit.as_view(), name='person_edit'), + check_rights(['change_person', 'change_own_person'])( + views.PersonEdit.as_view()), name='person_edit'), url(r'organization_search/(?P<step>.+)?$', - views.organization_search_wizard, name='organization_search'), + check_rights(['add_organization'])( + views.organization_search_wizard), name='organization_search'), url(r'organization_creation/(?P<step>.+)?$', - views.organization_creation_wizard, name='organization_creation'), + check_rights(['add_organization'])( + views.organization_creation_wizard), name='organization_creation'), url(r'organization_modification/(?P<step>.+)?$', - views.organization_modification_wizard, + check_rights(['change_organization', 'change_own_organization'])( + views.organization_modification_wizard), name='organization_modification'), url(r'organization_deletion/(?P<step>.+)?$', - views.organization_deletion_wizard, name='organization_deletion'), + check_rights(['change_organization', 'change_own_organization'])( + views.organization_deletion_wizard), name='organization_deletion'), url(r'organization-edit/$', - views.OrganizationCreate.as_view(), name='organization_create'), + check_rights(['add_organization'])( + views.OrganizationCreate.as_view()), name='organization_create'), url(r'organization-edit/(?P<pk>\d+)$', - views.OrganizationEdit.as_view(), name='organization_edit'), + check_rights(['change_organization', 'change_own_organization'])( + views.OrganizationEdit.as_view()), name='organization_edit'), url(r'organization-person-edit/$', - views.OrganizationPersonCreate.as_view(), + check_rights(['add_organization'])( + views.OrganizationPersonCreate.as_view()), name='organization_person_create'), url(r'organization-person-edit/(?P<pk>\d+)$', - views.OrganizationPersonEdit.as_view(), + check_rights(['change_organization', 'change_own_organization'])( + views.OrganizationPersonEdit.as_view()), name='organization_person_edit'), url(r'account_management/(?P<step>.+)?$', - views.account_management_wizard, name='account_management'), - url(r'^import-new/$', views.NewImportView.as_view(), name='new_import'), - url(r'^import-list/$', views.ImportListView.as_view(), + check_rights(['add_ishtaruser'])( + views.account_management_wizard), name='account_management'), + url(r'^import-new/$', + check_rights(['change_import'])( + views.NewImportView.as_view()), name='new_import'), + url(r'^import-list/$', + check_rights(['change_import'])( + views.ImportListView.as_view()), name='current_imports'), - url(r'^import-list-old/$', views.ImportOldListView.as_view(), + url(r'^import-list-old/$', + check_rights(['change_import'])( + views.ImportOldListView.as_view()), name='old_imports'), url(r'^import-delete/(?P<pk>[0-9]+)/$', views.ImportDeleteView.as_view(), name='import_delete'), url(r'^import-link-unmatched/(?P<pk>[0-9]+)/$', views.ImportLinkView.as_view(), name='import_link_unmatched'), ) + +actions = [] for section in menu.childs: for menu_item in section.childs: if hasattr(menu_item, 'childs'): |