| 1 | from django.contrib import admin |
|---|
| 2 | |
|---|
| 3 | from reversion.admin import VersionAdmin |
|---|
| 4 | |
|---|
| 5 | import space.models |
|---|
| 6 | import util.admin |
|---|
| 7 | |
|---|
| 8 | class Admin_LockType(VersionAdmin): |
|---|
| 9 | list_display = ( |
|---|
| 10 | 'id', |
|---|
| 11 | 'name', |
|---|
| 12 | 'slug', |
|---|
| 13 | 'info_addr', |
|---|
| 14 | 'info_url', |
|---|
| 15 | 'db_update', |
|---|
| 16 | ) |
|---|
| 17 | list_display_links = ( 'id', 'name', 'slug', ) |
|---|
| 18 | search_fields = ('name', 'slug', 'info_addr', 'info_url', 'db_update', ) |
|---|
| 19 | admin.site.register(space.models.LockType, Admin_LockType) |
|---|
| 20 | |
|---|
| 21 | class Admin_Space(VersionAdmin): |
|---|
| 22 | list_display = ( |
|---|
| 23 | 'id', |
|---|
| 24 | 'number', |
|---|
| 25 | 'asa_owned', |
|---|
| 26 | 'lock_type', |
|---|
| 27 | 'merged_acl', |
|---|
| 28 | ) |
|---|
| 29 | list_display_links = ( 'id', 'number', ) |
|---|
| 30 | list_filter = ('lock_type', ) |
|---|
| 31 | search_fields = ('number', ) |
|---|
| 32 | admin.site.register(space.models.Space, Admin_Space) |
|---|
| 33 | |
|---|
| 34 | class Admin_SpaceAssignment(admin.ModelAdmin): |
|---|
| 35 | class AssignmentPeriodFilter(util.admin.TimePeriodFilter): |
|---|
| 36 | start_field = 'start' |
|---|
| 37 | end_field = 'end' |
|---|
| 38 | |
|---|
| 39 | list_max_show_all = 500 |
|---|
| 40 | list_display = ( |
|---|
| 41 | 'group', |
|---|
| 42 | 'space', |
|---|
| 43 | 'locker_num', |
|---|
| 44 | 'start', |
|---|
| 45 | 'end', |
|---|
| 46 | ) |
|---|
| 47 | list_display_links = list_display |
|---|
| 48 | list_filter = (AssignmentPeriodFilter, 'space', ) |
|---|
| 49 | search_fields = ( 'group__name', 'group__officer_email', 'space__number', ) |
|---|
| 50 | admin.site.register(space.models.SpaceAssignment, Admin_SpaceAssignment) |
|---|
| 51 | |
|---|
| 52 | class Admin_SpaceAccessListEntry(admin.ModelAdmin): |
|---|
| 53 | class AccessPeriodFilter(util.admin.TimePeriodFilter): |
|---|
| 54 | start_field = 'start' |
|---|
| 55 | end_field = 'end' |
|---|
| 56 | |
|---|
| 57 | list_display = ( |
|---|
| 58 | 'group', |
|---|
| 59 | 'space', |
|---|
| 60 | 'start', |
|---|
| 61 | 'end', |
|---|
| 62 | 'name', |
|---|
| 63 | ) |
|---|
| 64 | list_display_links = list_display |
|---|
| 65 | list_filter = (AccessPeriodFilter, 'space', ) |
|---|
| 66 | search_fields = ( |
|---|
| 67 | 'group__name', 'group__officer_email', |
|---|
| 68 | 'space__number', |
|---|
| 69 | 'name', |
|---|
| 70 | ) |
|---|
| 71 | admin.site.register(space.models.SpaceAccessListEntry, Admin_SpaceAccessListEntry) |
|---|