diff options
| -rw-r--r-- | archaeological_operations/wizards.py | 16 | 
1 files changed, 12 insertions, 4 deletions
| diff --git a/archaeological_operations/wizards.py b/archaeological_operations/wizards.py index cacc44da1..ed568a943 100644 --- a/archaeological_operations/wizards.py +++ b/archaeological_operations/wizards.py @@ -31,6 +31,10 @@ from ishtar_common.wizards import Wizard, ClosingWizard, DeletionWizard, \  import models  from forms import ParcelForm, GenerateDocForm +FILES_AVAILABLE = 'archaeological_files' in settings.INSTALLED_APPS +if FILES_AVAILABLE: +    from archaeological_files.models import File +  class OperationWizard(Wizard):      model = models.Operation      object_parcel_type = 'operation' @@ -49,6 +53,8 @@ class OperationWizard(Wizard):          return templates      def get_current_file(self): +        if not FILES_AVAILABLE: +            return          step = self.steps.current          if not step:              return @@ -56,7 +62,7 @@ class OperationWizard(Wizard):          try:              idx = int(self.session_get_value(main_form_key,                                               'associated_file')) -            current_file = models.File.objects.get(pk=idx) +            current_file = File.objects.get(pk=idx)              return current_file          except(TypeError, ValueError, ObjectDoesNotExist):              pass @@ -86,11 +92,13 @@ class OperationWizard(Wizard):          Obtention des villes disponibles          """          general_form_key = 'general-' + self.url_name +        if FILES_AVAILABLE: +            return -1          towns = []          file_id = self.session_get_value(general_form_key, "associated_file")          if file_id:              try: -                for town in models.File.objects.get(pk=int(file_id) +                for town in File.objects.get(pk=int(file_id)                                                      ).towns.all():                      towns.append((town.pk, unicode(town)))              except (ValueError, ObjectDoesNotExist): @@ -102,7 +110,7 @@ class OperationWizard(Wizard):      def get_available_parcels(self, file_id):          parcels = []          try: -            for parcel in models.File.objects.get(pk=int(file_id) +            for parcel in File.objects.get(pk=int(file_id)                                                  ).parcels.all():                  parcels.append((parcel.pk, parcel.short_label))          except (ValueError, ObjectDoesNotExist): @@ -304,7 +312,7 @@ class OperationAdministrativeActWizard(OperationWizard):              associated_item = self.get_associated_item(dct)              if not associated_item:                  return self.render(form_list[-1]) -            if isinstance(associated_item, models.File): +            if isinstance(associated_item, File):                  dct['associated_file'] = associated_item              elif isinstance(associated_item, models.Operation):                  dct['operation'] = associated_item | 
