api: optimize fillslot endpoint calculation in meetings/datetimes API (#17954)

This commit is contained in:
Frédéric Péters 2017-08-10 09:25:14 +02:00
parent b3f6f63853
commit f7db30cfcc
1 changed files with 11 additions and 8 deletions

View File

@ -173,19 +173,22 @@ class MeetingDatetimes(GenericAPIView):
entries.sort(key=lambda x: x.start_datetime)
fake_event_pk = '__event_id__'
fillslot_url = request.build_absolute_uri(
reverse('api-fillslot',
kwargs={
'agenda_identifier': agenda.slug,
'event_pk': fake_event_pk,
}))
response = {'data': [{'id': x.id,
'datetime': localtime(x.start_datetime).strftime('%Y-%m-%d %H:%M:%S'),
'text': unicode(x),
'disabled': bool(x.full),
'api': {
'fillslot_url': request.build_absolute_uri(
reverse('api-fillslot',
kwargs={
'agenda_identifier': agenda.slug,
'event_pk': x.id,
})),
}
} for x in entries]}
'fillslot_url': fillslot_url.replace(fake_event_pk, str(x.id)),
},
} for x in entries]}
return Response(response)
meeting_datetimes = MeetingDatetimes.as_view()