summaryrefslogtreecommitdiff
path: root/devel/admin.py
diff options
context:
space:
mode:
Diffstat (limited to 'devel/admin.py')
-rw-r--r--devel/admin.py50
1 files changed, 50 insertions, 0 deletions
diff --git a/devel/admin.py b/devel/admin.py
new file mode 100644
index 00000000..d1729fe3
--- /dev/null
+++ b/devel/admin.py
@@ -0,0 +1,50 @@
+from django.contrib import admin
+from django.contrib.auth.admin import UserAdmin
+from django.contrib.auth.models import User
+
+from .models import UserProfile, StaffGroup, MasterKey, DeveloperKey, PGPSignature
+
+
+class UserProfileInline(admin.StackedInline):
+ model = UserProfile
+
+
+class UserProfileAdmin(UserAdmin):
+ inlines = [UserProfileInline]
+ list_display = ('username', 'email', 'first_name', 'last_name', 'is_staff', 'is_active')
+ list_filter = ('is_staff', 'is_superuser', 'is_active')
+
+
+class StaffGroupAdmin(admin.ModelAdmin):
+ list_display = ('name', 'group', 'sort_order', 'member_title', 'slug')
+ prepopulated_fields = {'slug': ('name',)}
+
+
+class MasterKeyAdmin(admin.ModelAdmin):
+ list_display = ('pgp_key', 'owner', 'created', 'revoker', 'revoked')
+ search_fields = ('pgp_key', 'owner__username', 'revoker__username')
+ date_hierarchy = 'created'
+
+
+class DeveloperKeyAdmin(admin.ModelAdmin):
+ list_display = ('key', 'parent', 'owner', 'created', 'expires', 'revoked')
+ search_fields = ('key', 'owner__username')
+ list_filter = ('owner',)
+ date_hierarchy = 'created'
+
+
+class PGPSignatureAdmin(admin.ModelAdmin):
+ list_display = ('signer', 'signee', 'created', 'expires', 'revoked')
+ search_fields = ('signer', 'signee')
+ date_hierarchy = 'created'
+
+
+admin.site.unregister(User)
+admin.site.register(User, UserProfileAdmin)
+admin.site.register(StaffGroup, StaffGroupAdmin)
+
+admin.site.register(MasterKey, MasterKeyAdmin)
+admin.site.register(DeveloperKey, DeveloperKeyAdmin)
+admin.site.register(PGPSignature, PGPSignatureAdmin)
+
+# vim: set ts=4 sw=4 et: