diff options
| -rw-r--r-- | ishtar_common/ishtar_menu.py | 31 | ||||
| -rw-r--r-- | ishtar_common/urls.py | 4 | ||||
| -rw-r--r-- | ishtar_common/views.py | 56 | ||||
| -rw-r--r-- | ishtar_common/wizards.py | 42 | 
4 files changed, 22 insertions, 111 deletions
diff --git a/ishtar_common/ishtar_menu.py b/ishtar_common/ishtar_menu.py index bd068c449..73a7b81d7 100644 --- a/ishtar_common/ishtar_menu.py +++ b/ishtar_common/ishtar_menu.py @@ -140,32 +140,11 @@ MENU_SECTIONS = [                       model=models.Document,                       access_controls=['change_document',                                        'change_own_document']), +            MenuItem('document/delete', +                     _(u"Deletion"), +                     model=models.Document, +                     access_controls=['change_document', +                                      'change_own_document']),          ])       )  ] -""" -SectionItem( -                'operation_source', _(u"Documentation"), -                childs=[ -                    MenuItem('operation_source_search', -                             _(u"Search"), -                             model=models.OperationSource, -                             access_controls=['view_operation', -                                              'view_own_operation']), -                    MenuItem('operation_source_creation', -                             _(u"Creation"), -                             model=models.OperationSource, -                             access_controls=['change_operation', -                                              'change_own_operation']), -                    MenuItem('operation_source_modification', -                             _(u"Modification"), -                             model=models.OperationSource, -                             access_controls=['change_operation', -                                              'change_own_operation']), -                    MenuItem('operation_source_deletion', -                             _(u"Deletion"), -                             model=models.OperationSource, -                             access_controls=['change_operation', -                                              'change_own_operation']), -                ]) -""" diff --git a/ishtar_common/urls.py b/ishtar_common/urls.py index 0c249d131..f9f342ce3 100644 --- a/ishtar_common/urls.py +++ b/ishtar_common/urls.py @@ -240,6 +240,10 @@ urlpatterns += [          check_rights(['change_document', 'change_own_document'])(              views.DocumentEditView.as_view()),          name='edit-document'), +    url(r'document/delete/(?P<step>.+)?$', +        check_rights(['change_document', 'change_own_document'])( +            views.document_deletion_wizard), +        name='document_deletion'),  ]  urlpatterns += get_urls_for_model(models.Document, views) diff --git a/ishtar_common/views.py b/ishtar_common/views.py index 2baa5994a..22452ca91 100644 --- a/ishtar_common/views.py +++ b/ishtar_common/views.py @@ -1648,54 +1648,12 @@ class DocumentEditView(DocumentFormMixin, UpdateView):          return kwargs -""" -class DocumentSelectView(DocumentSelectMixin, IshtarMixin, LoginRequiredMixin, -                         FormView): -    page_name = _(u"Merge persons") -    current_url = 'person-manual-merge' -    redir_url = 'person_manual_merge_items' -""" - -""" -# operation sources - -operation_source_search_wizard = SearchWizard.as_view([ -    ('selec-operation_source_search', OperationSourceFormSelection)], -    label=_(u"Operation: source search"), -    url_name='operation_source_search',) - -operation_source_creation_wizard = OperationSourceWizard.as_view([ -    ('selec-operation_source_creation', SourceOperationFormSelection), -    ('source-operation_source_creation', OperationSourceForm), -    ('authors-operation_source_creation', AuthorFormset), -    ('final-operation_source_creation', FinalForm)], -    label=_(u"Operation: source creation"), -    url_name='operation_source_creation',) - -operation_source_modification_steps = [ -    ('selec-operation_source_modification', OperationSourceFormSelection), -    ('source-operation_source_modification', OperationSourceForm), -    ('authors-operation_source_modification', AuthorFormset), -    ('final-operation_source_modification', FinalForm) +document_deletion_steps = [ +    ('selec-document_deletion', forms.DocumentFormSelection), +    ('final-document_deletion', FinalDeleteForm)  ] -operation_source_modification_wizard = OperationSourceWizard.as_view( -    operation_source_modification_steps, -    label=_(u"Operation: source modification"), -    url_name='operation_source_modification',) - - -def operation_source_modify(request, pk): -    operation_source_modification_wizard(request) -    OperationSourceWizard.session_set_value( -        request, 'selec-operation_source_modification', 'pk', pk, reset=True) -    return redirect(reverse( -        'operation_source_modification', -        kwargs={'step': 'source-operation_source_modification'})) - -operation_source_deletion_wizard = OperationSourceDeletionWizard.as_view([ -    ('selec-operation_source_deletion', OperationSourceFormSelection), -    ('final-operation_source_deletion', SourceDeletionForm)], -    label=_(u"Operation: source deletion"), -    url_name='operation_source_deletion',) -""" +document_deletion_wizard = wizards.DocumentDeletionWizard.as_view( +    document_deletion_steps, +    label=_(u"Document deletion"), +    url_name='document_deletion',) diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py index 69f7c4c8e..979f611ce 100644 --- a/ishtar_common/wizards.py +++ b/ishtar_common/wizards.py @@ -1735,41 +1735,11 @@ class SourceWizard(Wizard):              dct.pop('history_modifier')          return dct -""" -class OperationSourceWizard(SourceWizard): -    model = models.OperationSource -    wizard_done_window = reverse_lazy('show-operationsource') - -    def get_form_initial(self, step, data=None): -        initial = super(OperationSourceWizard, self).get_form_initial(step) -        # put default index and operation_id field in the main source form -        general_form_key = 'selec-' + self.url_name -        if step.startswith('source-'): -            operation_id = None -            if self.session_has_key(general_form_key, 'operation'): -                try: -                    operation_id = int(self.session_get_value(general_form_key, -                                                              "operation")) -                except ValueError: -                    pass -            elif self.session_has_key(general_form_key, "pk"): -                try: -                    pk = self.session_get_value(general_form_key, "pk") -                    source = models.OperationSource.objects.get(pk=pk) -                    operation_id = source.operation.pk -                except (ValueError, ObjectDoesNotExist): -                    pass -            if operation_id: -                initial['hidden_operation_id'] = operation_id -                if 'index' not in initial: -                    max_val = models.OperationSource.objects.filter( -                        operation__pk=operation_id).aggregate( -                        Max('index'))["index__max"] -                    initial['index'] = max_val and (max_val + 1) or 1 -        return initial +class DocumentDeletionWizard(DeletionWizard): +    model = models.Document +    fields = [f.name for f in model._meta.get_fields() +              if f.name != 'id' and f.name not in model.RELATED_MODELS] + \ +             model.RELATED_MODELS +    filter_owns = {'selec-document_deletion': ['pk']} -class OperationSourceDeletionWizard(DeletionWizard): -    model = models.OperationSource -    fields = ['operation', 'title', 'source_type', 'authors'] -"""  | 
