diff options
| -rw-r--r-- | archaeological_context_records/urls.py | 16 | ||||
| -rw-r--r-- | archaeological_context_records/views.py | 2 | ||||
| -rw-r--r-- | archaeological_finds/urls.py | 14 | ||||
| -rw-r--r-- | archaeological_finds/views.py | 2 | ||||
| -rw-r--r-- | archaeological_operations/forms.py | 15 | ||||
| -rw-r--r-- | archaeological_operations/models.py | 2 | ||||
| -rw-r--r-- | archaeological_operations/urls.py | 37 | ||||
| -rw-r--r-- | archaeological_operations/views.py | 204 | ||||
| -rw-r--r-- | archaeological_operations/wizards.py | 43 | ||||
| -rw-r--r-- | archaeological_warehouse/urls.py | 6 | ||||
| -rw-r--r-- | archaeological_warehouse/views.py | 1 | ||||
| -rw-r--r-- | example_project/urls.py | 2 | ||||
| -rw-r--r-- | ishtar_common/templates/base.html | 2 | ||||
| -rw-r--r-- | ishtar_common/wizards.py | 14 | 
14 files changed, 187 insertions, 173 deletions
| diff --git a/archaeological_context_records/urls.py b/archaeological_context_records/urls.py index 1cbf03f12..0ac1566ac 100644 --- a/archaeological_context_records/urls.py +++ b/archaeological_context_records/urls.py @@ -18,27 +18,26 @@  # See the file COPYING for details.  from django.conf.urls.defaults import * -"""  import views  # forms  urlpatterns = patterns('',         # Context records -       url(r'record_search/(?P<step>.+)$', +       url(r'record_search/(?P<step>.+)?$',             views.record_search_wizard, name='record_search'), -       url(r'record_creation/(?P<step>.+)$', +       url(r'record_creation/(?P<step>.+)?$',             views.record_creation_wizard, name='record_creation'), -       url(r'record_modification/(?P<step>.+)$', +       url(r'record_modification/(?P<step>.+)?$',             views.record_modification_wizard, name='record_modification'), -       url(r'record_deletion/(?P<step>.+)$', +       url(r'record_deletion/(?P<step>.+)?$',             views.record_deletion_wizard, name='record_deletion'), -       url(r'record_source_creation/(?P<step>.+)$', +       url(r'record_source_creation/(?P<step>.+)?$',             views.record_source_creation_wizard,             name='record_source_creation'), -       url(r'record_source_modification/(?P<step>.+)$', +       url(r'record_source_modification/(?P<step>.+)?$',             views.record_source_modification_wizard,             name='record_source_modification'), -       url(r'record_source_deletion/(?P<step>.+)$', +       url(r'record_source_deletion/(?P<step>.+)?$',             views.record_source_deletion_wizard,             name='record_source_deletion'),  ) @@ -54,4 +53,3 @@ urlpatterns += patterns('archaeological_context_records.views',       url(r'get-contexrecordsource/(?P<type>.+)?$',             'get_contextrecordsource', name='get-contextrecordsource'),  ) -""" diff --git a/archaeological_context_records/views.py b/archaeological_context_records/views.py index b1f8ca772..103db2066 100644 --- a/archaeological_context_records/views.py +++ b/archaeological_context_records/views.py @@ -17,6 +17,8 @@  # See the file COPYING for details. +from django.utils.translation import ugettext_lazy as _ +  from ishtar_common.views import get_item, show_item, revert_item  from ishtar_common.wizards import SearchWizard  from wizards import * diff --git a/archaeological_finds/urls.py b/archaeological_finds/urls.py index fbf359813..e4a7d748f 100644 --- a/archaeological_finds/urls.py +++ b/archaeological_finds/urls.py @@ -19,24 +19,23 @@  from django.conf.urls.defaults import * -"""  import views  # forms  urlpatterns = patterns('', -       url(r'item_search/(?P<step>.+)$', +       url(r'item_search/(?P<step>.+)?$',             views.item_search_wizard, name='item_search'), -       url(r'item_creation/(?P<step>.+)$', +       url(r'item_creation/(?P<step>.+)?$',             views.item_creation_wizard, name='item_creation'), -       url(r'item_modification/(?P<step>.+)$', +       url(r'item_modification/(?P<step>.+)?$',             views.item_modification_wizard, name='item_modification'), -       url(r'item_source_creation/(?P<step>.+)$', +       url(r'item_source_creation/(?P<step>.+)?$',             views.item_source_creation_wizard,             name='item_source_creation'), -       url(r'item_source_modification/(?P<step>.+)$', +       url(r'item_source_modification/(?P<step>.+)?$',             views.item_source_modification_wizard,             name='item_source_modification'), -       url(r'item_source_deletion/(?P<step>.+)$', +       url(r'item_source_deletion/(?P<step>.+)?$',             views.item_source_deletion_wizard,             name='item_source_deletion'),  ) @@ -49,4 +48,3 @@ urlpatterns += patterns('archaeological_finds.views',       url(r'get-findsource/(?P<type>.+)?$',             'get_findsource', name='get-findsource'),  ) -""" diff --git a/archaeological_finds/views.py b/archaeological_finds/views.py index cde192ef3..5f2e6cb4a 100644 --- a/archaeological_finds/views.py +++ b/archaeological_finds/views.py @@ -17,6 +17,8 @@  # See the file COPYING for details. +from django.utils.translation import ugettext_lazy as _ +  from ishtar_common.views import get_item, show_item, revert_item  from ishtar_common.wizards import SearchWizard  from wizards import * diff --git a/archaeological_operations/forms.py b/archaeological_operations/forms.py index dc342f477..95d2d5275 100644 --- a/archaeological_operations/forms.py +++ b/archaeological_operations/forms.py @@ -337,21 +337,6 @@ PeriodFormset = formset_factory(PeriodForm, can_delete=True,                                  formset=PeriodFormSet)  PeriodFormset.form_label = _("Periods") -def has_associated_file(form_name, file_key='associated_file', negate=False): -    def func(self, request, storage): -        if storage.prefix not in request.session or \ -           'step_data' not in request.session[storage.prefix] or \ -           form_name not in request.session[storage.prefix]['step_data'] or\ -           form_name + '-' + file_key not in \ -                     request.session[storage.prefix]['step_data'][form_name]: -            return negate -        try: -            file_id = int(request.session[storage.prefix]['step_data']\ -                                      [form_name][form_name+'-'+file_key]) -            return not negate -        except ValueError: -            return negate -    return func  class FinalOperationClosingForm(FinalForm):      confirm_msg = " "      confirm_end_msg = _(u"Would you like to close this operation?") diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py index 42026eebe..831190342 100644 --- a/archaeological_operations/models.py +++ b/archaeological_operations/models.py @@ -17,6 +17,8 @@  # See the file COPYING for details. +import datetime +  from django.conf import settings  from django.contrib.gis.db import models  from django.db.models import Q, Count, Sum, Max, Avg diff --git a/archaeological_operations/urls.py b/archaeological_operations/urls.py index fb3278e31..89e1a63fc 100644 --- a/archaeological_operations/urls.py +++ b/archaeological_operations/urls.py @@ -19,40 +19,39 @@  from django.conf.urls.defaults import * -"""  import views  # forms  urlpatterns = patterns('', -       url(r'operation_search/(?P<step>.+)$', -           views.operation_search_wizard, name='operation_search'), -       url(r'operation_creation/(?P<step>.+)$', -           views.operation_creation_wizard, name='operation_creation'), -       url(r'operation_modification/(?P<step>.+)$', -           views.operation_modification_wizard, -           name='operation_modification'), -       url(r'operation_closing/(?P<step>.+)$', -           views.operation_closing_wizard, name='operation_closing'), -       url(r'operation_deletion/(?P<step>.+)$', -           views.operation_deletion_wizard, name='operation_deletion'), -       url(r'operation_administrativeactop/(?P<step>.+)$', +       url(r'operation_administrativeactop/(?P<step>.+)?$',             views.operation_administrativeactop_wizard,             name='operation_administrativeactop'), -       url(r'operation_administrativeactop_modification/(?P<step>.+)$', +       url(r'operation_administrativeactop_modification/(?P<step>.+)?$',             views.operation_administrativeactop_modification_wizard,             name='operation_administrativeactop_modification'), -       url(r'operation_administrativeactop_deletion/(?P<step>.+)$', +       url(r'operation_administrativeactop_deletion/(?P<step>.+)?$',             views.operation_administrativeactop_deletion_wizard,             name='operation_administrativeactop_deletion'), -       url(r'operation_source_creation/(?P<step>.+)$', +       url(r'operation_source_creation/(?P<step>.+)?$',             views.operation_source_creation_wizard,             name='operation_source_creation'), -       url(r'operation_source_modification/(?P<step>.+)$', +       url(r'operation_source_modification/(?P<step>.+)?$',             views.operation_source_modification_wizard,             name='operation_source_modification'), -       url(r'operation_source_deletion/(?P<step>.+)$', +       url(r'operation_source_deletion/(?P<step>.+)?$',             views.operation_source_deletion_wizard,             name='operation_source_deletion'), +       url(r'operation_search/(?P<step>.+)?$', +           views.operation_search_wizard, name='operation_search'), +       url(r'operation_creation/(?P<step>.+)?$', +           views.operation_creation_wizard, name='operation_creation'), +       url(r'operation_modification/(?P<step>.+)?$', +           views.operation_modification_wizard, +           name='operation_modification'), +       url(r'operation_closing/(?P<step>.+)?$', +           views.operation_closing_wizard, name='operation_closing'), +       url(r'operation_deletion/(?P<step>.+)?$', +           views.operation_deletion_wizard, name='operation_deletion'),  )  urlpatterns += patterns('archaeological_operations.views', @@ -72,4 +71,4 @@ urlpatterns += patterns('archaeological_operations.views',             'get_administrativeactop', name='get-administrativeactop'),       url(r'get-operationsource/(?P<type>.+)?$',             'get_operationsource', name='get-operationsource'), -)""" +) diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py index c00624fe1..38e2a1bc4 100644 --- a/archaeological_operations/views.py +++ b/archaeological_operations/views.py @@ -22,6 +22,7 @@ import json  from django.db.models import Q  from django.http import HttpResponse  from django.shortcuts import render_to_response +from django.utils.translation import ugettext_lazy as _  from ishtar_common.views import get_item, show_item, revert_item  from ishtar_common.wizards import SearchWizard @@ -95,130 +96,131 @@ def dashboard_operation(request, dct, obj_id=None, *args, **kwargs):                                context_instance=RequestContext(request))  operation_search_wizard = SearchWizard.as_view([ -                          ('general-operation_search', OperationFormSelection)], -                          label=_(u"Operation search"), -                          url_name='operation_search',) +    ('general-operation_search', OperationFormSelection)], +    label=_(u"Operation search"), +    url_name='operation_search',)  operation_creation_wizard = OperationWizard.as_view([ -           ('general-operation_creation', OperationFormGeneral), -           ('preventive-operation_creation', OperationFormPreventive), -           ('preventivediag-operation_creation', OperationFormPreventiveDiag), -           ('townsgeneral-operation_creation', TownFormset), -           ('towns-operation_creation', SelectedTownFormset), -           ('parcelsgeneral-operation_creation', SelectedParcelGeneralFormSet), -           ('parcels-operation_creation', SelectedParcelFormSet), -           ('remains-operation_creation', RemainFormset), -           ('periods-operation_creation', PeriodFormset), -           ('final-operation_creation', FinalForm)], -           label=_(u"Operation creation"), -           condition_dict={ -                     'preventive-operation_creation':\ -                            is_preventive('general-operation_creation', -                                          models.OperationType, -                                          'operation_type', 'prev_excavation'), -                     'preventivediag-operation_creation':\ -                            is_preventive('general-operation_creation', -                                          models.OperationType, -                                          'operation_type', 'arch_diagnostic'), -                     'townsgeneral-operation_creation':has_associated_file( -                                     'general-operation_creation', negate=True), -                     'towns-operation_creation':has_associated_file( -                                     'general-operation_creation'), -                     'parcelsgeneral-operation_creation':has_associated_file( -                                     'general-operation_creation', negate=True), -                     'parcels-operation_creation':has_associated_file( -                                     'general-operation_creation'), -                            }, -           url_name='operation_creation',) +    ('general-operation_creation', OperationFormGeneral), +    ('preventive-operation_creation', OperationFormPreventive), +    ('preventivediag-operation_creation', OperationFormPreventiveDiag), +    ('townsgeneral-operation_creation', TownFormset), +    ('towns-operation_creation', SelectedTownFormset), +    ('parcelsgeneral-operation_creation', SelectedParcelGeneralFormSet), +    ('parcels-operation_creation', SelectedParcelFormSet), +    ('remains-operation_creation', RemainFormset), +    ('periods-operation_creation', PeriodFormset), +    ('final-operation_creation', FinalForm)], +    label=_(u"Operation creation"), +    condition_dict={ +        'preventive-operation_creation':\ +            is_preventive('general-operation_creation', models.OperationType, +            'operation_type', 'prev_excavation'), +        'preventivediag-operation_creation':\ +            is_preventive('general-operation_creation', models.OperationType, +            'operation_type', 'arch_diagnostic'), +        'townsgeneral-operation_creation':has_associated_file( +            'general-operation_creation', negate=True), +        'towns-operation_creation':has_associated_file( +            'general-operation_creation'), +        'parcelsgeneral-operation_creation':has_associated_file( +            'general-operation_creation', negate=True), +        'parcels-operation_creation':has_associated_file( +            'general-operation_creation'), +    }, +    url_name='operation_creation',)  operation_modification_wizard = OperationModificationWizard.as_view([ -         ('selec-operation_modification', OperationFormSelection), -         ('general-operation_modification', OperationFormGeneral), -         ('preventive-operation_modification', OperationFormPreventive), -         ('preventivediag-operation_modification', OperationFormPreventiveDiag), -         ('towns-operation_modification', SelectedTownFormset), -         ('townsgeneral-operation_modification', TownFormset), -         ('parcels-operation_modification', SelectedParcelFormSet), -         ('parcelsgeneral-operation_modification', SelectedParcelGeneralFormSet), -         ('remains-operation_modification', RemainFormset), -         ('periods-operation_modification', PeriodFormset), -         ('final-operation_modification', FinalForm)], -         label=_(u"Operation modification"), -         condition_dict={ -            'preventive-operation_modification':is_preventive( -                         'general-operation_modification', models.OperationType, -                         'operation_type', 'prev_excavation'), -            'preventivediag-operation_modification':is_preventive( -                         'general-operation_modification', models.OperationType, -                         'operation_type', 'arch_diagnostic'), -            'townsgeneral-operation_modification':has_associated_file( -                                 'general-operation_modification', negate=True), -            'towns-operation_modification':has_associated_file( -                                 'general-operation_modification'), -            'parcelsgeneral-operation_modification':has_associated_file( -                                 'general-operation_modification', negate=True), -            'parcels-operation_modification':has_associated_file( -                                 'general-operation_modification'), -                            }, -         url_name='operation_modification',) +    ('selec-operation_modification', OperationFormSelection), +    ('general-operation_modification', OperationFormGeneral), +    ('preventive-operation_modification', OperationFormPreventive), +    ('preventivediag-operation_modification', OperationFormPreventiveDiag), +    ('towns-operation_modification', SelectedTownFormset), +    ('townsgeneral-operation_modification', TownFormset), +    ('parcels-operation_modification', SelectedParcelFormSet), +    ('parcelsgeneral-operation_modification', SelectedParcelGeneralFormSet), +    ('remains-operation_modification', RemainFormset), +    ('periods-operation_modification', PeriodFormset), +    ('final-operation_modification', FinalForm)], +    label=_(u"Operation modification"), +    condition_dict={ +        'preventive-operation_modification':is_preventive( +            'general-operation_modification', models.OperationType, +            'operation_type', 'prev_excavation'), +        'preventivediag-operation_modification':is_preventive( +            'general-operation_modification', models.OperationType, +            'operation_type', 'arch_diagnostic'), +        'townsgeneral-operation_modification':has_associated_file( +            'general-operation_modification', negate=True), +        'towns-operation_modification':has_associated_file( +            'general-operation_modification'), +        'parcelsgeneral-operation_modification':has_associated_file( +            'general-operation_modification', negate=True), +        'parcels-operation_modification':has_associated_file( +            'general-operation_modification'), +         }, +    url_name='operation_modification',)  operation_closing_wizard = OperationClosingWizard.as_view([ -                     ('selec-operation_closing', OperationFormSelection), -                     ('date-operation_closing', ClosingDateFormSelection), -                     ('final-operation_closing', FinalOperationClosingForm)], -                      label=_(u"Operation closing"), -                      url_name='operation_closing',) +    ('selec-operation_closing', OperationFormSelection), +    ('date-operation_closing', ClosingDateFormSelection), +    ('final-operation_closing', FinalOperationClosingForm)], +    label=_(u"Operation closing"), +    url_name='operation_closing',)  operation_deletion_wizard = OperationDeletionWizard.as_view([ -                     ('selec-operation_deletion', OperationFormSelection), -                     ('final-operation_deletion', OperationDeletionForm)], -                      label=_(u"Operation deletion"), -                      url_name='operation_deletion',) +    ('selec-operation_deletion', OperationFormSelection), +    ('final-operation_deletion', OperationDeletionForm)], +    label=_(u"Operation deletion"), +    url_name='operation_deletion',)  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',) +    ('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_wizard = OperationSourceWizard.as_view([ -         ('selec-operation_source_modification', OperationSourceFormSelection), -         ('source-operation_source_modification', OperationSourceForm), -         ('authors-operation_source_modification', AuthorFormset), -         ('final-operation_source_modification', FinalForm)], -          label=_(u"Operation: source modification"), -          url_name='operation_source_modification',) +    ('selec-operation_source_modification', OperationSourceFormSelection), +    ('source-operation_source_modification', OperationSourceForm), +    ('authors-operation_source_modification', AuthorFormset), +    ('final-operation_source_modification', FinalForm)], +    label=_(u"Operation: source modification"), +    url_name='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',) +    ('selec-operation_source_deletion', OperationSourceFormSelection), +    ('final-operation_source_deletion', SourceDeletionForm)], +    label=_(u"Operation: source deletion"), +    url_name='operation_source_deletion',)  operation_administrativeactop_wizard = \                                  OperationAdministrativeActWizard.as_view([      ('selec-operation_administrativeactop', OperationFormSelection), -    ('administrativeact-operation_administrativeactop', AdministrativeActOpeForm), +    ('administrativeact-operation_administrativeactop', +     AdministrativeActOpeForm),      ('final-operation_administrativeactop', FinalForm)], -     label=_(u"Operation: new administrative act"), -     url_name='operation_administrativeactop',) +    label=_(u"Operation: new administrative act"), +    url_name='operation_administrativeactop',)  operation_administrativeactop_modification_wizard = \                                  OperationEditAdministrativeActWizard.as_view([ -       ('selec-operation_administrativeactop_modification', -                                            AdministrativeActOpeFormSelection), -       ('administrativeact-operation_administrativeactop_modification', -                                            AdministrativeActOpeForm), -       ('final-operation_administrativeactop_modification', FinalForm)], -       url_name='operation_administrativeactop_modification',) +    ('selec-operation_administrativeactop_modification', +     AdministrativeActOpeFormSelection), +    ('administrativeact-operation_administrativeactop_modification', +     AdministrativeActOpeForm), +    ('final-operation_administrativeactop_modification', FinalForm)], +    label=_(u"Operation: administrative act modification"), +    url_name='operation_administrativeactop_modification',)  operation_administrativeactop_deletion_wizard = \                                  AdministrativeActDeletionWizard.as_view([ -                     ('selec-operation_administrativeactop_deletion', -                                 AdministrativeActOpeFormSelection), -                     ('final-operation_administrativeactop_deletion', -                                 FinalAdministrativeActDeleteForm)], -                      url_name='operation_administrativeactop_deletion',) +    ('selec-operation_administrativeactop_deletion', +     AdministrativeActOpeFormSelection), +    ('final-operation_administrativeactop_deletion', +     FinalAdministrativeActDeleteForm)], +    label=_(u"Operation: administrative act deletion"), +    url_name='operation_administrativeactop_deletion',) diff --git a/archaeological_operations/wizards.py b/archaeological_operations/wizards.py index 7c09c1154..66469b5b7 100644 --- a/archaeological_operations/wizards.py +++ b/archaeological_operations/wizards.py @@ -19,6 +19,7 @@  from django.conf import settings  from django.core.exceptions import ObjectDoesNotExist +from django.db.models import Max  from django.shortcuts import render_to_response  from django.template import RequestContext  from django.utils.translation import ugettext_lazy as _ @@ -150,18 +151,20 @@ class OperationSourceWizard(SourceWizard):          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-') \ -           and self.session_has_key(general_form_key): -            gen_storage = self.request.session[storage.prefix]['step_data']\ -                                              [general_form_key] -            if general_form_key+"-operation" in gen_storage: -                operation_id = int(gen_storage[general_form_key+"-operation"]) -            elif general_form_key+"-pk" in gen_storage: -                pk = int(gen_storage[general_form_key+"-pk"]) +        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 ObjectDoesNotExist: +                except (ValueError, ObjectDoesNotExist):                      pass              if operation_id:                  initial['hidden_operation_id'] = operation_id @@ -241,7 +244,7 @@ def is_preventive(form_name, model, type_key='operation_type', key=''):              return False          try:              typ = request.session[storage.prefix]['step_data']\ -                                     [form_name][form_name+'-'+type_key] +                                 [form_name][form_name+'-'+type_key]              if type(typ) in (list, tuple):                  typ = typ[0]              typ = int(typ) @@ -250,3 +253,23 @@ def is_preventive(form_name, model, type_key='operation_type', key=''):              return False      return func +def has_associated_file(form_name, file_key='associated_file', negate=False): +    def func(self): +        request = self.request +        storage = self.storage +        if storage.prefix not in request.session or \ +           'step_data' not in request.session[storage.prefix] or \ +           form_name not in request.session[storage.prefix]['step_data'] or\ +           form_name + '-' + file_key not in \ +                     request.session[storage.prefix]['step_data'][form_name]: +            return negate +        try: +            file_id = request.session[storage.prefix]['step_data']\ +                                     [form_name][form_name+'-'+file_key] +            if type(file_id) in (list, tuple): +                file_id = file_id[0] +            file_id = int(file_id) +            return not negate +        except ValueError: +            return negate +    return func diff --git a/archaeological_warehouse/urls.py b/archaeological_warehouse/urls.py index 903d77a59..e91568b1e 100644 --- a/archaeological_warehouse/urls.py +++ b/archaeological_warehouse/urls.py @@ -19,14 +19,13 @@  from django.conf.urls.defaults import * -"""  import views  # forms  urlpatterns = patterns('', -       url(r'treatment_creation/(?P<step>.+)$', +       url(r'treatment_creation/(?P<step>.+)?$',             views.treatment_creation_wizard, name='treatment_creation'), -       url(r'warehouse_packaging/(?P<step>.+)$', +       url(r'warehouse_packaging/(?P<step>.+)?$',             views.warehouse_packaging_wizard, name='warehouse_packaging'),  ) @@ -42,4 +41,3 @@ urlpatterns += patterns('archaeological_warehouse.views',       url(r'autocomplete-container/?$',             'autocomplete_container', name='autocomplete-container'),  ) -""" diff --git a/archaeological_warehouse/views.py b/archaeological_warehouse/views.py index 78df71bc2..f15220efe 100644 --- a/archaeological_warehouse/views.py +++ b/archaeological_warehouse/views.py @@ -22,6 +22,7 @@ import json  from django.db.models import Q  from django.http import HttpResponse  from django.shortcuts import render_to_response +from django.utils.translation import ugettext_lazy as _  from ishtar_common.views import get_item, show_item, revert_item  import models diff --git a/example_project/urls.py b/example_project/urls.py index e4247b922..f97f51be4 100644 --- a/example_project/urls.py +++ b/example_project/urls.py @@ -15,7 +15,7 @@ urlpatterns = patterns('',  APP_LIST = ['archaeological_files', 'archaeological_operations',              'archaeological_context_records', 'archaeological_warehouse',              'archaeological_finds'] -APP_LIST = ['archaeological_files'] +APP_LIST = ['archaeological_files', 'archaeological_operations']  for app in APP_LIST:      if app in settings.INSTALLED_APPS:          urlpatterns += patterns('', diff --git a/ishtar_common/templates/base.html b/ishtar_common/templates/base.html index bfc78b166..6e44e8729 100644 --- a/ishtar_common/templates/base.html +++ b/ishtar_common/templates/base.html @@ -39,7 +39,7 @@          {% block context %}{% if current_menu %}          <form method="post" action="{% url update-current-item %}">          <fieldset> -        <legend>{% trans "Default items"%}</legend> +        <legend>{% trans "Default selected items"%}</legend>          <table id='current_items'>          {% for lbl, model_name, items in current_menu %}              <tr> diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py index fb6ad22e2..373ee0e41 100644 --- a/ishtar_common/wizards.py +++ b/ishtar_common/wizards.py @@ -551,13 +551,19 @@ class Wizard(NamedUrlWizardView):          storage = self.storage          if not multi:              key = key.startswith(form_key) and key or form_key + '-' + key -            return request.session[storage.prefix]['step_data'][form_key][key] +            val = request.session[storage.prefix]['step_data'][form_key][key] +            if type(val) in (list, tuple): +                val = val[0] +            return val          vals = []          for k in request.session[storage.prefix]['step_data'][form_key]:              if k.startswith(form_key) and k.endswith(key) and \                 request.session[storage.prefix]['step_data'][form_key][k]: -                vals.append(request.session[storage.prefix]['step_data']\ -                                           [form_key][k]) +                val = request.session[storage.prefix]['step_data']\ +                                                     [form_key][k] +                if type(val) in (list, tuple): +                    val = val[0] +                vals.append(val)          return vals      def get_current_object(self): @@ -567,8 +573,6 @@ class Wizard(NamedUrlWizardView):          main_form_key = 'selec-' + self.url_name          try:              idx = self.session_get_value(main_form_key, 'pk') -            if type(idx) in (tuple, list): -                idx = idx[0]              idx = int(idx)              current_obj = self.model.objects.get(pk=idx)          except(TypeError, ValueError, ObjectDoesNotExist): | 
