summaryrefslogtreecommitdiff
path: root/ishtar_common/admin.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2017-08-02 19:29:11 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2017-08-02 19:29:11 +0200
commit5e70cc61b723fb36e0da14abb6c8de58a18162d5 (patch)
treecf98515d86721212915cb6cb00cb41d8e3f9c574 /ishtar_common/admin.py
parentba6c73260563fcc6b8a0164e55b13a3eb48e9205 (diff)
downloadIshtar-5e70cc61b723fb36e0da14abb6c8de58a18162d5.tar.bz2
Ishtar-5e70cc61b723fb36e0da14abb6c8de58a18162d5.zip
Admin - ishtar common: use ajax selects for some fields - clean and simplify
Diffstat (limited to 'ishtar_common/admin.py')
-rw-r--r--ishtar_common/admin.py16
1 files changed, 13 insertions, 3 deletions
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py
index 494fc3ac9..897ceaa6e 100644
--- a/ishtar_common/admin.py
+++ b/ishtar_common/admin.py
@@ -22,6 +22,8 @@ Admin description
"""
import csv
+from ajax_select import make_ajax_form
+
from django.conf import settings
from django.contrib import admin
from django.contrib.auth.admin import GroupAdmin, UserAdmin
@@ -30,7 +32,7 @@ from django.http import HttpResponseRedirect, HttpResponse
from django.shortcuts import render_to_response
from django.template import RequestContext
from django.template.defaultfilters import slugify
-from django.utils.translation import ugettext_lazy as _, ugettext
+from django.utils.translation import ugettext_lazy as _
from django import forms
@@ -115,7 +117,7 @@ def export_as_csv_action(description=_(u"Export selected as CSV file"),
class HistorizedObjectAdmin(admin.ModelAdmin):
- readonly_fields = ('history_modifier',)
+ readonly_fields = ['history_creator', 'history_modifier',]
def save_model(self, request, obj, form, change):
obj.history_modifier = request.user
@@ -152,6 +154,7 @@ class OrganizationAdmin(HistorizedObjectAdmin):
list_filter = ("organization_type",)
search_fields = ('name',)
exclude = ('merge_key', 'merge_exclusion', 'merge_candidate', )
+ readonly_fields = HistorizedObjectAdmin.readonly_fields + ['imports']
model = models.Organization
admin_site.register(models.Organization, OrganizationAdmin)
@@ -162,6 +165,8 @@ class PersonAdmin(HistorizedObjectAdmin):
list_filter = ("person_types",)
search_fields = ('name', 'surname', 'email', 'raw_name')
exclude = ('merge_key', 'merge_exclusion', 'merge_candidate', )
+ readonly_fields = HistorizedObjectAdmin.readonly_fields + ['imports']
+ form = make_ajax_form(models.Person, {'attached_to': 'organization'})
model = models.Person
admin_site.register(models.Person, PersonAdmin)
@@ -174,6 +179,7 @@ class TownAdmin(admin.ModelAdmin):
list_display += ['numero_insee', 'departement', ]
search_fields += ['numero_insee', 'departement__label', ]
list_filter = ("departement",)
+ readonly_fields = ['imports']
model = models.Town
admin_site.register(models.Town, TownAdmin)
@@ -182,7 +188,10 @@ admin_site.register(models.Town, TownAdmin)
class AuthorAdmin(admin.ModelAdmin):
list_display = ['person', 'author_type']
list_filter = ("author_type",)
+ search_fields = ('person__name', 'person__surname',
+ 'person__attached_to__name')
model = models.Author
+ form = make_ajax_form(models.Author, {'person': 'person'})
admin_site.register(models.Author, AuthorAdmin)
@@ -277,6 +286,7 @@ admin_site.register(models.FormaterType, FormaterTypeAdmin)
class ImportAdmin(admin.ModelAdmin):
list_display = ('name', 'importer_type', 'imported_file', 'user', 'state',
'creation_date')
+ form = make_ajax_form(models.Import, {'user': 'ishtaruser'})
admin_site.register(models.Import, ImportAdmin)
@@ -333,7 +343,7 @@ class AdministrationTaskAdmin(admin.ModelAdmin):
admin_site.register(models.AdministrationTask, AdministrationTaskAdmin)
-basic_models = [models.DocumentTemplate, models.IshtarUser]
+basic_models = [models.DocumentTemplate]
if settings.COUNTRY == 'fr':
basic_models += [models.Arrondissement, models.Canton]