summaryrefslogtreecommitdiff
path: root/chimere/admin.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2012-11-22 20:13:02 +0100
committerÉtienne Loks <etienne.loks@peacefrogs.net>2012-11-22 20:13:02 +0100
commitbe70ae3016861cb13f1600c266522782b8e4dc90 (patch)
treed22cd609e67665511cc9bcaa5c190c45f65bd569 /chimere/admin.py
parent83fc9015eb778b958a921e68c0580ed37990624f (diff)
downloadChimère-be70ae3016861cb13f1600c266522782b8e4dc90.tar.bz2
Chimère-be70ae3016861cb13f1600c266522782b8e4dc90.zip
Admin: improve layout of markers and routes
Diffstat (limited to 'chimere/admin.py')
-rw-r--r--chimere/admin.py51
1 files changed, 51 insertions, 0 deletions
diff --git a/chimere/admin.py b/chimere/admin.py
index e611ee0..b4231a7 100644
--- a/chimere/admin.py
+++ b/chimere/admin.py
@@ -165,8 +165,39 @@ class MarkerAdmin(admin.ModelAdmin):
readonly_fields = ['submiter_email', 'submiter_comment', 'import_source',
'ref_item', 'modified_since_import']
form = MarkerAdminForm
+ fieldsets = ((None, {
+ 'fields': ['point', 'name', 'status', 'categories',
+ 'description', 'start_date', 'end_date']
+ }),
+ (_(u"Submiter"), {
+ 'classes':('collapse',),
+ 'fields': ('submiter_name', 'submiter_email',
+ 'submiter_comment')
+ }),
+ (_(u"Import"), {
+ 'classes':('collapse',),
+ 'fields': ('modified_since_import', 'import_source',
+ 'origin', 'license')
+ }),
+ (_(u"Advanced options"), {
+ 'classes':('collapse',),
+ 'fields': ('ref_item', 'route',)
+ }),
+ )
inlines = [MultimediaInline, PictureInline]
+ def __init__(self, *args, **kwargs):
+ """
+ Manage properties in fieldsets.
+ """
+ main_fields = self.fieldsets[0][1]['fields']
+ for pm in PropertyModel.objects.filter(available=True).order_by('order'
+ ).all():
+ pm_name = pm.getNamedId()
+ if pm_name not in main_fields:
+ main_fields.append(pm_name)
+ super(MarkerAdmin, self).__init__(*args, **kwargs)
+
def queryset(self, request):
qs = self.model._default_manager.get_query_set()
if not request.user.is_superuser:
@@ -192,6 +223,26 @@ class RouteAdmin(admin.ModelAdmin):
readonly_fields = ('associated_file',)
actions = [validate, disable, managed_modified, export_to_kml,
export_to_shapefile, export_to_csv]
+ fieldsets = ((None, {
+ 'fields': ['route', 'name', 'status', 'categories',
+ 'start_date', 'end_date']
+ }),
+ (_(u"Submiter"), {
+ 'classes':('collapse',),
+ 'fields': ('submiter_name', 'submiter_email',
+ 'submiter_comment')
+ }),
+ (_(u"Import"), {
+ 'classes':('collapse',),
+ 'fields': ('modified_since_import', 'import_source',
+ 'origin', 'license')
+ }),
+ (_(u"Advanced options"), {
+ 'classes':('collapse',),
+ 'fields': ('ref_item', 'associated_file',
+ 'has_associated_marker')
+ }),
+ )
def queryset(self, request):
qs = self.model._default_manager.get_query_set()