From 566aa2a8a797bded2786dd399a99b69b1be330d2 Mon Sep 17 00:00:00 2001 From: Nikos Roussos Date: Wed, 6 May 2015 13:06:00 +0300 Subject: [PATCH] Add more admin option on all models --- network/base/admin.py | 44 +++++++++++++++++++++++++++++++++++-------- 1 file changed, 36 insertions(+), 8 deletions(-) diff --git a/network/base/admin.py b/network/base/admin.py index 80c6d86..7791c45 100644 --- a/network/base/admin.py +++ b/network/base/admin.py @@ -5,32 +5,60 @@ from network.base.models import (Antenna, Satellite, Station, Transponder, class AntennaAdmin(admin.ModelAdmin): - list_display = ('antenna_type', 'frequency', 'band') + list_filter = ('band', 'antenna_type') class StationAdmin(admin.ModelAdmin): - list_display = ('name', 'owner', 'lng', 'lat', 'qthlocator') + list_display = ('name', 'owner', 'lng', 'lat', 'qthlocator', + 'created_date', 'active', 'state') + list_filter = ('active', 'created') + readonly_fields = ('last_seen', ) + + def created_date(self, obj): + return obj.created.strftime('%d.%m.%Y, %H:%M') class SatelliteAdmin(admin.ModelAdmin): - list_display = ('name', 'norad_cat_id') + list_display = ('name', 'norad_cat_id', 'updated_date') + + def updated_date(self, obj): + return obj.updated.strftime('%d.%m.%Y, %H:%M') class TransponderAdmin(admin.ModelAdmin): - list_display = ('satellite', 'description', 'uplink_low', + list_display = ('description', 'satellite', 'uplink_low', 'uplink_high', 'downlink_low', 'downlink_high') + search_fields = ('satellite', ) + list_filter = ('mode', 'invert', ) -class ObservasionAdmin(admin.ModelAdmin): - list_display = ('id', 'author', 'satellite', 'transponder', 'start', 'end') +class ObservationAdmin(admin.ModelAdmin): + list_display = ('id', 'author', 'satellite', 'transponder', 'start_date', 'end_date') + list_filter = ('start', 'end') + search_fields = ('satellite', 'author') + + def start_date(self, obj): + return obj.start.strftime('%d.%m.%Y, %H:%M') + + def end_date(self, obj): + return obj.end.strftime('%d.%m.%Y, %H:%M') class DataAdmin(admin.ModelAdmin): - list_display = ('id', 'start', 'end', 'observation', 'ground_station') + list_display = ('id', 'start_date', 'end_date', 'observation', 'ground_station') + exclude = ('payload', ) + readonly_fields = ('observation', 'ground_station') + + def start_date(self, obj): + return obj.start.strftime('%d.%m.%Y, %H:%M') + + def end_date(self, obj): + return obj.end.strftime('%d.%m.%Y, %H:%M') + admin.site.register(Antenna, AntennaAdmin) admin.site.register(Satellite, SatelliteAdmin) admin.site.register(Station, StationAdmin) admin.site.register(Transponder, TransponderAdmin) -admin.site.register(Observation, ObservasionAdmin) +admin.site.register(Observation, ObservationAdmin) admin.site.register(Data, DataAdmin)