diff options
Diffstat (limited to 'archaeological_operations/admin.py')
-rw-r--r-- | archaeological_operations/admin.py | 43 |
1 files changed, 38 insertions, 5 deletions
diff --git a/archaeological_operations/admin.py b/archaeological_operations/admin.py index 3cfd91d5e..f1deac188 100644 --- a/archaeological_operations/admin.py +++ b/archaeological_operations/admin.py @@ -75,6 +75,13 @@ class ArchaeologicalSiteAdmin(HistorizedObjectAdmin): admin_site.register(models.ArchaeologicalSite, ArchaeologicalSiteAdmin) +class ArchaeologicalSiteInline(admin.TabularInline): + model = models.Operation.archaeological_sites.through + form = make_ajax_form( + model, {'archaeologicalsite': 'archaeological_site'}) + extra = 1 + + class AdminOperationForm(forms.ModelForm): class Meta: model = models.Operation @@ -107,6 +114,7 @@ class OperationAdmin(HistorizedObjectAdmin): readonly_fields = HistorizedObjectAdmin.readonly_fields + [ 'imports', 'cached_label'] form = AdminOperationForm + inlines = [ArchaeologicalSiteInline] admin_site.register(models.Operation, OperationAdmin) @@ -126,8 +134,18 @@ admin_site.register(models.OperationSource, OperationSourceAdmin) class ParcelAdmin(HistorizedObjectAdmin): list_display = ['section', 'parcel_number', 'operation', 'associated_file'] - search_fields = ('operation__name',) + search_fields = ('operation__cached_label', + 'associated_file__cached_label', + 'year', 'section', 'parcel_number') model = models.Parcel + form = make_ajax_form( + model, {'associated_file': 'file', + 'operation': 'operation', + 'town': 'town'} + ) + readonly_fields = HistorizedObjectAdmin.readonly_fields + [ + 'imports', 'history_date' + ] admin_site.register(models.Parcel, ParcelAdmin) @@ -165,10 +183,25 @@ class ReportStateAdmin(GeneralTypeAdmin): admin_site.register(models.ReportState, ReportStateAdmin) +class ParcelOwnerAdmin(HistorizedObjectAdmin): + list_display = ['parcel', 'operation', 'associated_file', + 'owner'] + search_fields = ('parcel__operation__cached_label', + 'parcel__associated_file__cached_label', + 'owner__name', 'owner__surname', 'parcel__section', + 'parcel__parcel_number') + model = models.ParcelOwner + form = make_ajax_form( + model, {'owner': 'person', + 'parcel': 'parcel'} + ) + readonly_fields = HistorizedObjectAdmin.readonly_fields + [ + 'imports', 'history_date' + ] + +admin_site.register(models.ParcelOwner, ParcelOwnerAdmin) + + general_models = [models.RemainType] for model in general_models: admin_site.register(model, GeneralTypeAdmin) - -basic_models = [models.ParcelOwner] -for model in basic_models: - admin_site.register(model) |