diff options
Diffstat (limited to 'archaeological_files/views.py')
-rw-r--r-- | archaeological_files/views.py | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/archaeological_files/views.py b/archaeological_files/views.py index ba640a785..942ee6ae3 100644 --- a/archaeological_files/views.py +++ b/archaeological_files/views.py @@ -28,6 +28,7 @@ from django.utils.translation import ugettext_lazy as _ from ishtar_common.views import get_item, show_item, revert_item from ishtar_common.models import Person +from archaeological_operations.models import Operation import models from ishtar_common.wizards import SearchWizard @@ -85,9 +86,17 @@ get_file = get_item(models.File, 'get_file', 'file', 'general_contractor__attached_to':'general_contractor__attached_to__pk', 'history_creator':'history_creator__ishtaruser__person__pk', },) -show_file = show_item(models.File, 'file') revert_file = revert_item(models.File) +def extra_file_dct(request, item): + dct = {} + if (request.user.has_perm('ishtar_common.add_operation', Operation) + or request.user.ishtaruser.has_right('add_operation')): + dct['can_add_operation'] = True + return dct + +show_file = show_item(models.File, 'file', extra_dct=extra_file_dct) + get_administrativeactfile = get_item(AdministrativeAct, 'get_administrativeactfile', 'administrativeactfile', associated_models = [(models.File, 'associated_file'), @@ -179,6 +188,12 @@ file_deletion_wizard = FileDeletionWizard.as_view([ label=_(u"File deletion"), url_name='file_deletion',) +file_administrativeactfile_search_wizard = SearchWizard.as_view([ + ('selec-file_administrativeactfile_search', + AdministrativeActFileFormSelection)], + label=_(u"File: search administrative act"), + url_name='file_administrativeactfile_search',) + file_administrativeactfile_wizard = FileAdministrativeActWizard.as_view([ ('selec-file_administrativeactfile', FileFormSelection), ('administrativeact-file_administrativeactfile', @@ -206,3 +221,16 @@ file_administrativeactfile_deletion_wizard = \ label=_(u"File: administrative act deletion"), url_name='file_administrativeactfile_deletion',) +def reset_wizards(request): + for wizard_class, url_name in ( + (FileWizard, 'file_creation'), + (FileModificationWizard, 'file_modification'), + (FileClosingWizard, 'file_modification'), + (FileDeletionWizard, 'file_deletion'), + (FileAdministrativeActWizard, 'file_administrativeactfile'), + (FileEditAdministrativeActWizard, + 'file_administrativeactfile_modification_wizard'), + (AdministrativeActDeletionWizard, + 'file_administrativeactfile_deletion_wizard'), + ): + wizard_class.session_reset(request, url_name) |