Skip to content

Commit 191d5b1

Browse files
committed
Make working with session purpose easier in the admin. Commit ready for merge.
- Legacy-Id: 19920
1 parent c8a99dc commit 191d5b1

2 files changed

Lines changed: 10 additions & 5 deletions

File tree

ietf/meeting/admin.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -96,10 +96,10 @@ class SchedulingEventInline(admin.TabularInline):
9696
raw_id_fields = ["by"]
9797

9898
class SessionAdmin(admin.ModelAdmin):
99-
list_display = ["meeting", "name", "group", "attendees", "requested", "current_status"]
100-
list_filter = ["meeting", ]
99+
list_display = ["meeting", "name", "group_acronym", "purpose", "attendees", "requested", "current_status"]
100+
list_filter = ["purpose", "meeting", ]
101101
raw_id_fields = ["meeting", "group", "materials", "joint_with_groups", "tombstone_for"]
102-
search_fields = ["meeting__number", "name", "group__name", "group__acronym", ]
102+
search_fields = ["meeting__number", "name", "group__name", "group__acronym", "purpose__name"]
103103
ordering = ["-id"]
104104
inlines = [SchedulingEventInline]
105105

@@ -108,10 +108,13 @@ def get_queryset(self, request):
108108
qs = super(SessionAdmin, self).get_queryset(request)
109109
return qs.prefetch_related('schedulingevent_set')
110110

111+
def group_acronym(self, instance):
112+
return instance.group and instance.group.acronym
113+
111114
def current_status(self, instance):
112115
events = sorted(instance.schedulingevent_set.all(), key=lambda e: (e.time, e.id))
113116
if events:
114-
return events[-1].time
117+
return f'{events[-1].status} ({events[-1].time:%Y-%m-%d %H:%M})'
115118
else:
116119
return None
117120

ietf/meeting/resources.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,11 +166,12 @@ class Meta:
166166

167167
from ietf.group.resources import GroupResource
168168
from ietf.doc.resources import DocumentResource
169-
from ietf.name.resources import TimeSlotTypeNameResource
169+
from ietf.name.resources import TimeSlotTypeNameResource, SessionPurposeNameResource
170170
from ietf.person.resources import PersonResource
171171
class SessionResource(ModelResource):
172172
meeting = ToOneField(MeetingResource, 'meeting')
173173
type = ToOneField(TimeSlotTypeNameResource, 'type')
174+
purpose = ToOneField(SessionPurposeNameResource, 'purpose')
174175
group = ToOneField(GroupResource, 'group')
175176
materials = ToManyField(DocumentResource, 'materials', null=True)
176177
resources = ToManyField(ResourceAssociationResource, 'resources', null=True)
@@ -195,6 +196,7 @@ class Meta:
195196
"modified": ALL,
196197
"meeting": ALL_WITH_RELATIONS,
197198
"type": ALL_WITH_RELATIONS,
199+
"purpose": ALL_WITH_RELATIONS,
198200
"group": ALL_WITH_RELATIONS,
199201
"requested_by": ALL_WITH_RELATIONS,
200202
"status": ALL_WITH_RELATIONS,

0 commit comments

Comments
 (0)