diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-02-23 12:01:23 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-02-23 12:01:23 +0100 |
commit | 86913ebf0f32ac67d40370f08fca9cbc84b5ac6e (patch) | |
tree | 4631bcb768a6a1840d81bad168da2006cf031bda | |
parent | 241f14672f0ff58fecbd004e090405751a968e87 (diff) | |
download | Ishtar-86913ebf0f32ac67d40370f08fca9cbc84b5ac6e.tar.bz2 Ishtar-86913ebf0f32ac67d40370f08fca9cbc84b5ac6e.zip |
Improve modularity
-rw-r--r-- | archaeological_operations/ishtar_menu.py | 97 | ||||
-rw-r--r-- | archaeological_operations/views.py | 12 | ||||
-rw-r--r-- | ishtar_common/static/media/style.css | 2 |
3 files changed, 54 insertions, 57 deletions
diff --git a/archaeological_operations/ishtar_menu.py b/archaeological_operations/ishtar_menu.py index 5a22efd05..a0852147a 100644 --- a/archaeological_operations/ishtar_menu.py +++ b/archaeological_operations/ishtar_menu.py @@ -20,7 +20,6 @@ from django.utils.translation import ugettext_lazy as _, pgettext_lazy from ishtar_common.menu_base import SectionItem, MenuItem -from ishtar_common.models import get_current_profile import models @@ -55,6 +54,38 @@ MENU_SECTIONS = [ access_controls=['change_operation', 'change_own_operation']), SectionItem( + 'admin_act_operations', + _(u"Administrative act"), + profile_restriction='files', + childs=[ + MenuItem( + 'operation_administrativeactop_search', + _(u"Search"), + model=models.AdministrativeAct, + access_controls=[ + 'change_administrativeact']), + MenuItem( + 'operation_administrativeactop', + _(u"Add"), + model=models.AdministrativeAct, + access_controls=['change_administrativeact']), + MenuItem( + 'operation_administrativeactop_modification', + _(u"Modification"), + model=models.AdministrativeAct, + access_controls=['change_administrativeact']), + MenuItem( + 'operation_administrativeactop_deletion', + _(u"Deletion"), + model=models.AdministrativeAct, + access_controls=['change_administrativeact']), + MenuItem( + 'operation_administrativeact_document', + _(u"Documents"), + model=models.AdministrativeAct, + access_controls=['change_administrativeact']), + ],), + SectionItem( 'operation_source', _(u"Documentation"), childs=[ MenuItem('operation_source_search', @@ -81,6 +112,19 @@ MENU_SECTIONS = [ ]), ), ( + 35, SectionItem( + 'administrativact_management', _(u"Administrative Act"), + profile_restriction='files', + childs=[ + MenuItem( + 'administrativact_register', + pgettext_lazy('admin act register', u"Register"), + model=models.AdministrativeAct, + access_controls=['view_administrativeact', + 'view_own_administrativeact']), + ]) + ), + ( 102, SectionItem( 'dashboard', _(u"Dashboard"), childs=[ @@ -95,54 +139,3 @@ MENU_SECTIONS = [ ]), ), ] - -if get_current_profile().files: - MENU_SECTIONS.insert( - 1, - ( - 35, SectionItem( - 'administrativact_management', _(u"Administrative Act"), - childs=[ - MenuItem( - 'administrativact_register', - pgettext_lazy('admin act register', u"Register"), - model=models.AdministrativeAct, - access_controls=['view_administrativeact', - 'view_own_administrativeact']), - ]) - ) - ) - MENU_SECTIONS[0][1].childs.insert( - 5, - SectionItem( - 'admin_act_operations', - _(u"Administrative act"), - childs=[ - MenuItem( - 'operation_administrativeactop_search', - _(u"Search"), - model=models.AdministrativeAct, - access_controls=[ - 'change_administrativeact']), - MenuItem( - 'operation_administrativeactop', - _(u"Add"), - model=models.AdministrativeAct, - access_controls=['change_administrativeact']), - MenuItem( - 'operation_administrativeactop_modification', - _(u"Modification"), - model=models.AdministrativeAct, - access_controls=['change_administrativeact']), - MenuItem( - 'operation_administrativeactop_deletion', - _(u"Deletion"), - model=models.AdministrativeAct, - access_controls=['change_administrativeact']), - MenuItem( - 'operation_administrativeact_document', - _(u"Documents"), - model=models.AdministrativeAct, - access_controls=['change_administrativeact']), - ],) - ) diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py index 22d820b5b..11e1d8711 100644 --- a/archaeological_operations/views.py +++ b/archaeological_operations/views.py @@ -232,6 +232,7 @@ operation_search_wizard = SearchWizard.as_view([ url_name='operation_search',) wizard_steps = [ + ('filechoice-operation_creation', OperationFormFileChoice), ('general-operation_creation', OperationFormGeneral), ('preventive-operation_creation', OperationFormPreventive), ('preventivediag-operation_creation', OperationFormPreventiveDiag), @@ -244,16 +245,19 @@ wizard_steps = [ ('relations-operation_creation', RecordRelationsFormSet), ('abstract-operation_creation', OperationFormAbstract), ('final-operation_creation', FinalForm)] -if get_current_profile().files: - wizard_steps.insert(0, ('filechoice-operation_creation', - OperationFormFileChoice)) + + +def check_files_for_operation(self): + if not check_rights_condition(['view_file'])(self): + return False + return get_current_profile().files operation_creation_wizard = OperationWizard.as_view( wizard_steps, label=_(u"New operation"), condition_dict={ 'filechoice-operation_creation': - check_rights_condition(['view_file']), + check_files_for_operation, 'preventive-operation_creation': is_preventive('general-operation_creation', models.OperationType, 'operation_type', 'prev_excavation'), diff --git a/ishtar_common/static/media/style.css b/ishtar_common/static/media/style.css index a4c62739b..2a0079706 100644 --- a/ishtar_common/static/media/style.css +++ b/ishtar_common/static/media/style.css @@ -371,7 +371,7 @@ div#main_menu > ul > li{ -webkit-border-radius:0; } -#section-file_management, #section-administration, +#section-file_management, #section-administrativact_management{ background-color:#ddffdd; } |