diff options
| -rw-r--r-- | ishtar/furnitures/forms.py | 39 | ||||
| -rw-r--r-- | ishtar/furnitures/menus.py | 8 | ||||
| -rw-r--r-- | ishtar/furnitures/urls.py | 6 | 
3 files changed, 46 insertions, 7 deletions
| diff --git a/ishtar/furnitures/forms.py b/ishtar/furnitures/forms.py index 57f1c2d05..447b79694 100644 --- a/ishtar/furnitures/forms.py +++ b/ishtar/furnitures/forms.py @@ -975,6 +975,8 @@ class FileClosingWizard(Wizard):              else:                  value = unicode(value)              res[field.name] = (field.verbose_name, value, '') +        if not datas and self.fields: +            datas = [['', []]]          for field in self.fields:              if field in res:                  datas[0][1].append(res[field]) @@ -1107,6 +1109,22 @@ class AdministrativeActFileFormSelection(forms.Form):                                             " act."))          return cleaned_data +class AdministrativeActDeletionWizard(FileClosingWizard): +    model = models.AdministrativeAct +    fields = ['act_type', 'in_charge', 'operator', 'scientific', 'signatory', +              'operation', 'associated_file', 'signature_date', 'act_object',] +    if settings.COUNTRY == 'fr': +        fields += ['ref_sra'] + +    def done(self, request, storage, form_list, **kwargs): +        obj = self.get_current_object(request, storage) +        obj.delete() +        return render_to_response('wizard_done.html', {}, +                                  context_instance=RequestContext(request)) + +class FinalAdministrativeActDeleteForm(FinalForm): +    confirm_msg = " " +    confirm_end_msg = _(u"Would you like to delete this administrative act?")  file_administrativeact_wizard = FileAdministrativeActWizard([         ('selec-file_administrativeact', FileFormSelection), @@ -1122,6 +1140,13 @@ file_administrativeact_modification_wizard = FileEditAdministrativeActWizard([         ('final-file_administrativeact_modification', FinalForm)],         url_name='file_administrativeact_modification',) +file_administrativeact_deletion_wizard = AdministrativeActDeletionWizard([ +                     ('selec-file_administrativeact_deletion', +                                 AdministrativeActFileFormSelection), +                     ('final-file_administrativeact_deletion', +                                 FinalAdministrativeActDeleteForm)], +                      url_name='file_administrativeact_deletion',) +  class OperationWizard(Wizard):      model = models.Operation @@ -1267,13 +1292,6 @@ class OperationFormSelection(forms.Form):              raise forms.ValidationError(_(u"You should select an operation."))          return cleaned_data -    """ -    pk = forms.IntegerField(label=_("Operation"), -       widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-operation'), -                                         associated_model=models.Operation), -       validators=[models.valid_id(models.Operation)]) -""" -  class OperationFormGeneral(forms.Form):      form_label = _("General")      associated_models = {'in_charge':models.Person, @@ -1554,3 +1572,10 @@ operation_administrativeact_modification_wizard = \                                              AdministrativeActOpeForm),         ('final-operation_administrativeact_modification', FinalForm)],         url_name='operation_administrativeact_modification',) + +operation_administrativeact_deletion_wizard = AdministrativeActDeletionWizard([ +                     ('selec-operation_administrativeact_deletion', +                                 AdministrativeActOpeFormSelection), +                     ('final-operation_administrativeact_deletion', +                                 FinalAdministrativeActDeleteForm)], +                      url_name='operation_administrativeact_deletion',) diff --git a/ishtar/furnitures/menus.py b/ishtar/furnitures/menus.py index 26028db8a..ab7715903 100644 --- a/ishtar/furnitures/menus.py +++ b/ishtar/furnitures/menus.py @@ -92,6 +92,10 @@ class Menu:                           _(u"Modify an administrative act"),                    model=models.AdministrativeAct,                    access_controls=['change_file', 'change_own_file']), +                MenuItem('file_administrativeact_deletion', +                         _(u"Delete an administrative act"), +                  model=models.AdministrativeAct, +                  access_controls=['delete_file', 'delete_own_file']),              ]),          SectionItem('operation_management', _(u"Operation management"),              childs=[ @@ -115,6 +119,10 @@ class Menu:                           _(u"Modify an administrative act"),                    model=models.AdministrativeAct,                    access_controls=['change_operation', 'change_own_operation']), +                MenuItem('operation_administrativeact_deletion', +                         _(u"Delete an administrative act"), +                  model=models.AdministrativeAct, +                  access_controls=['operation_deletion', 'delete_own_operation']),              ]),          ]          self.items = {} diff --git a/ishtar/furnitures/urls.py b/ishtar/furnitures/urls.py index de3a24799..09ff7efa2 100644 --- a/ishtar/furnitures/urls.py +++ b/ishtar/furnitures/urls.py @@ -43,6 +43,9 @@ urlpatterns = patterns('',           url(BASE_URL + r'file_administrativeact_modification/(?P<step>.+)$',       ishtar_forms.file_administrativeact_modification_wizard,                                      name='file_administrativeact_modification'), +         url(BASE_URL + r'file_administrativeact_deletion/(?P<step>.+)$', +     ishtar_forms.file_administrativeact_deletion_wizard, +                                    name='file_administrativeact_deletion'),           url(BASE_URL + r'operation_creation/(?P<step>.+)$',             ishtar_forms.operation_creation_wizard, name='operation_creation'),           url(BASE_URL + r'operation_modification/(?P<step>.+)$', @@ -57,6 +60,9 @@ urlpatterns = patterns('',         url(BASE_URL + r'operation_administrativeact_modification/(?P<step>.+)$',       ishtar_forms.operation_administrativeact_modification_wizard,                                 name='operation_administrativeact_modification'), +       url(BASE_URL + r'operation_administrativeact_deletion/(?P<step>.+)$', +     ishtar_forms.operation_administrativeact_deletion_wizard, +                                   name='operation_administrativeact_deletion'),           )  for section in menu.childs:      for menu_item in section.childs: | 
