def create_deadlinedict(assignment_id, deadlines, now=None, autoserialize_groups=True): now = now or datetime.now() deadline = deadlines[0] groups = [] if autoserialize_groups: groups = GroupsListResource().serialize(deadlines) bulkdeadline_id = encode_bulkdeadline_id(deadline) return {'bulkdeadline_id': bulkdeadline_id, 'deadline': format_datetime(deadline.deadline), 'in_the_future': deadline.deadline > now, 'offset_from_now': format_timedelta(now - deadline.deadline), 'url': reverse('devilry_subjectadmin_rest_deadlinesbulkinstance', kwargs={'id': assignment_id, 'bulkdeadline_id': bulkdeadline_id}), 'text': deadline.text, 'groups': groups} # Only provided on instance, not in list
def publishing_time_offset_from_now(self, instance): if isinstance(instance, self.model): return format_timedelta(datetime.now() - instance.publishing_time)