source: asadb/groups/admin.py @ 3655f02

space-accessstablestagetest-hooks
Last change on this file since 3655f02 was b713ac7, checked in by Alex Dehnert <adehnert@…>, 14 years ago

Add class/status/funding

  • Property mode set to 100644
File size: 3.6 KB
Line 
1import groups.models
2from django.contrib import admin
3from reversion.admin import VersionAdmin
4
5class GroupAdmin(VersionAdmin):
6    list_display = (
7        'id',
8        'name',
9        'abbreviation',
10        'activity_category',
11        'officer_email',
12        'main_account_id',
13        'funding_account_id',
14        'athena_locker',
15        'update_date',
16        'updater',
17    )
18    list_display_links = ('id', 'name', )
19    list_filter = [
20        'activity_category',
21        'group_class',
22        'group_status',
23        'group_funding',
24    ]
25    date_hierarchy = 'update_date'
26    search_fields = [ 'id', 'name', 'abbreviation', 'officer_email', 'athena_locker', ]
27
28class OfficerRoleAdmin(VersionAdmin):
29    list_display = (
30        'id',
31        'display_name',
32        'slug',
33        'max_count',
34        'require_student',
35        'grant_user',
36    )
37    list_display_links = ('id', 'display_name', 'slug', )
38    prepopulated_fields = {"slug": ("display_name",)}
39
40class OfficeHolderAdmin(VersionAdmin):
41    list_display = (
42        'id',
43        'person',
44        'role',
45        'group',
46        'start_time', 'end_time',
47    )
48    list_display_links = (
49        'id',
50        'person',
51        'role',
52        'group',
53        'start_time', 'end_time',
54    )
55    search_fields = (
56        'id',
57        'person',
58        'role__display_name', 'role__slug',
59        'group__name', 'group__abbreviation',
60        'start_time', 'end_time',
61    )
62
63class ActivityCategoryAdmin(admin.ModelAdmin):
64    list_display = (
65        'id',
66        'name',
67    )
68    list_display_links = ('id', 'name', )
69
70class Admin_GroupClass(admin.ModelAdmin):
71    list_display = (
72        'id',
73        'name',
74        'slug',
75        'gets_publicity',
76    )
77    list_display_links = ('id', 'name', 'slug', )
78    list_filter = [ 'gets_publicity', ]
79    prepopulated_fields = {'slug': ('name', )}
80
81class Admin_GroupStatus(admin.ModelAdmin):
82    list_display = (
83        'id',
84        'name',
85        'slug',
86        'is_active',
87    )
88    list_display_links = ('id', 'name', 'slug', )
89    list_filter = [ 'is_active', ]
90    prepopulated_fields = {'slug': ('name', )}
91
92class Admin_GroupFunding(admin.ModelAdmin):
93    list_display = (
94        'id',
95        'name',
96        'slug',
97        'contact_email',
98        'funding_list',
99    )
100    list_display_links = ('id', 'name', 'slug', )
101    prepopulated_fields = {'slug': ('name', )}
102
103class Admin_GroupClass(admin.ModelAdmin):
104    list_display = (
105        'id',
106        'name',
107        'slug',
108        'gets_publicity',
109    )
110    list_display_links = ('id', 'name', 'slug', )
111    list_filter = [ 'gets_publicity', ]
112    prepopulated_fields = {'slug': ('name', )}
113
114class Admin_AthenaMoiraAccount(admin.ModelAdmin):
115    list_display = (
116        'id',
117        'username',
118        'mit_id',
119        'first_name',
120        'last_name',
121        'account_class',
122        'mutable',
123        'add_date',
124        'del_date',
125        'mod_date',
126    )
127    list_display_links = ( 'id', 'username', )
128    search_fields = ( 'username', 'mit_id', 'first_name', 'last_name', 'account_class', )
129
130admin.site.register(groups.models.Group, GroupAdmin)
131admin.site.register(groups.models.OfficerRole, OfficerRoleAdmin)
132admin.site.register(groups.models.OfficeHolder, OfficeHolderAdmin)
133admin.site.register(groups.models.ActivityCategory, ActivityCategoryAdmin)
134admin.site.register(groups.models.GroupClass, Admin_GroupClass)
135admin.site.register(groups.models.GroupStatus, Admin_GroupStatus)
136admin.site.register(groups.models.GroupFunding, Admin_GroupFunding)
137admin.site.register(groups.models.AthenaMoiraAccount, Admin_AthenaMoiraAccount)
Note: See TracBrowser for help on using the repository browser.