diff options
Diffstat (limited to 'archaeological_operations')
-rw-r--r-- | archaeological_operations/ishtar_menu.py | 8 | ||||
-rw-r--r-- | archaeological_operations/urls.py | 9 | ||||
-rw-r--r-- | archaeological_operations/views.py | 16 | ||||
-rw-r--r-- | archaeological_operations/wizards.py | 9 |
4 files changed, 35 insertions, 7 deletions
diff --git a/archaeological_operations/ishtar_menu.py b/archaeological_operations/ishtar_menu.py index 746c25f50..208cb33d8 100644 --- a/archaeological_operations/ishtar_menu.py +++ b/archaeological_operations/ishtar_menu.py @@ -119,8 +119,12 @@ MENU_SECTIONS = [ MenuItem( 'site_modification', _(u"Modification"), model=models.ArchaeologicalSite, - access_controls=['modify_archaeologicalsite', - 'modify_own_archaeologicalsite']), + access_controls=['change_archaeologicalsite', + 'change_own_archaeologicalsite']), + MenuItem('site_deletion', + _(u"Deletion"), + model=models.ArchaeologicalSite, + access_controls=['change_site']), ]), ), (30, SectionItem( diff --git a/archaeological_operations/urls.py b/archaeological_operations/urls.py index be734c031..ea46010b8 100644 --- a/archaeological_operations/urls.py +++ b/archaeological_operations/urls.py @@ -169,11 +169,14 @@ urlpatterns = [ views.site_creation_wizard), name='site_creation'), url(r'site_modification/(?P<step>.+)?$', - check_rights(['modify_archaeologicalsite', - 'modify_own_archaeologicalsite'])( + check_rights(['change_archaeologicalsite', + 'change_own_archaeologicalsite'])( views.site_modification_wizard), name='site_modification'), - + url(r'site_deletion/(?P<step>.+)?$', + check_rights(['change_archaeologicalsite'])( + views.site_deletion_wizard), + name='site_deletion'), url(r'autocomplete-patriarche/$', views.autocomplete_patriarche, name='autocomplete-patriarche'), diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py index 4647b0fc7..3e20a067d 100644 --- a/archaeological_operations/views.py +++ b/archaeological_operations/views.py @@ -29,7 +29,8 @@ from django.utils.translation import ugettext_lazy as _, pgettext_lazy from ishtar_common.models import get_current_profile, IshtarSiteProfile from archaeological_operations import models -from ishtar_common.forms import ClosingDateFormSelection, FinalForm +from ishtar_common.forms import ClosingDateFormSelection, FinalForm, \ + FinalDeleteForm from ishtar_common.forms_common import AuthorFormset, SourceDeletionForm from archaeological_operations.forms import ArchaeologicalSiteForm, \ OperationFormSelection, OperationFormFileChoice, OperationFormGeneral, \ @@ -53,7 +54,8 @@ from archaeological_operations.wizards import has_associated_file, \ OperationClosingWizard, OperationDeletionWizard, SiteSearch, \ OperationSourceWizard, OperationSourceDeletionWizard, \ OperationAdministrativeActWizard, OperationEditAdministrativeActWizard, \ - AdministrativeActDeletionWizard, SiteWizard, SiteModificationWizard + AdministrativeActDeletionWizard, SiteWizard, SiteModificationWizard, \ + SiteDeletionWizard def autocomplete_patriarche(request): @@ -370,6 +372,16 @@ site_modification_wizard = SiteModificationWizard.as_view( url_name='site_modification', ) +site_deletion_steps = [ + ('selec-site_deletion', SiteFormSelection), + ('final-site_deletion', FinalDeleteForm) +] + +site_deletion_wizard = SiteDeletionWizard.as_view( + site_deletion_steps, + label=_(u"Site deletion"), + url_name='site_deletion',) + # operation sources operation_source_search_wizard = SearchWizard.as_view([ diff --git a/archaeological_operations/wizards.py b/archaeological_operations/wizards.py index d5cb1d5ac..18c4b20e8 100644 --- a/archaeological_operations/wizards.py +++ b/archaeological_operations/wizards.py @@ -447,6 +447,10 @@ class OperationEditAdministrativeActWizard(OperationAdministrativeActWizard): def get_associated_item(self, dct): return self.get_current_object().operation +######## +# Site # +######## + class SiteLabel(object): def get_label(self): @@ -467,6 +471,11 @@ class SiteModificationWizard(SiteWizard): modification = True +class SiteDeletionWizard(DeletionWizard): + model = models.ArchaeologicalSite + fields = models.ArchaeologicalSite.TABLE_COLS + ['operations'] + + class AdministrativeActDeletionWizard(ClosingWizard): wizard_templates = { 'final-operation_administrativeactop_deletion': |