/
admin.py
97 lines (71 loc) · 2.91 KB
/
admin.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
r"""
sparkles.admin
~~~~~~~~~~~~~~
Django admin gui customization
"""
from django.contrib import admin
from django.contrib.auth.models import User, Group
from django.contrib.auth.admin import UserAdmin, GroupAdmin
from sparkles import models as db
class AdminSite(admin.AdminSite):
"""Subclassed admin site (to avoid running code in global scope)"""
def __init__(self, *args, **kwargs):
admin.AdminSite.__init__(self, *args, **kwargs)
self.register(User, UserAdmin)
self.register(Group, GroupAdmin)
self.register(db.Workgroup, WorkgroupAdmin)
self.register(db.Proposal, ProposalAdmin)
self.register(db.EmailBlacklist, EmailBlacklistAdmin)
self.register(db.PhoneBlacklist, PhoneBlacklistAdmin)
self.register(db.EmailVerify, EmailVerifyAdmin)
self.register(db.PhoneVerify, PhoneVerifyAdmin)
self.register(db.XmppVerify, XmppVerifyAdmin)
self.register(db.SmsMessage, SmsMessageAdmin)
self.register(db.XmppMessage, XmppMessageAdmin)
class ProposalAdmin(admin.ModelAdmin):
list_display = ('title', 'created', 'workgroup')
search_fields = ('title',)
date_hierarchy = 'created'
history_latest_first = True
class WorkgroupAdmin(admin.ModelAdmin):
list_display = ('username', 'created')
search_fields = ('username',)
date_hierarchy = 'created'
history_latest_first = True
class EmailBlacklistAdmin(admin.ModelAdmin):
list_display = ('email', 'created', 'reason')
search_fields = ('email', 'reason')
date_hierarchy = 'created'
history_latest_first = True
class PhoneBlacklistAdmin(admin.ModelAdmin):
list_display = ('phone', 'created', 'reason')
search_fields = ('phone', 'reason')
date_hierarchy = 'created'
history_latest_first = True
class EmailVerifyAdmin(admin.ModelAdmin):
list_display = ('email', 'code', 'created', 'ip')
search_fields = ('email', 'code', 'ip')
date_hierarchy = 'created'
history_latest_first = True
class PhoneVerifyAdmin(admin.ModelAdmin):
list_display = ('phone', 'code', 'created', 'ip')
search_fields = ('phone', 'code', 'ip')
date_hierarchy = 'created'
history_latest_first = True
class XmppVerifyAdmin(admin.ModelAdmin):
list_display = ('xmpp', 'code', 'created', 'ip')
search_fields = ('xmpp', 'code', 'ip')
date_hierarchy = 'created'
history_latest_first = True
class SmsMessageAdmin(admin.ModelAdmin):
list_display = ('content', 'created', 'from_addr', 'to_addr', 'is_egress')
list_filter = ('is_egress',)
search_fields = ('content', 'from_addr', 'to_addr')
date_hierarchy = 'created'
history_latest_first = True
class XmppMessageAdmin(admin.ModelAdmin):
list_display = ('content', 'created', 'from_addr', 'to_addr', 'is_egress')
list_filter = ('is_egress',)
search_fields = ('content', 'from_addr', 'to_addr')
date_hierarchy = 'created'
history_latest_first = True