def unfreeze(self, now=None): if not now: now = timezone.now() qs = self.filter(close_time__isnull=True, froze_until__lte=now) # pks = [ e['user_id'] for e in qs.filter(mode=Choice.FORBID).values('user_id') ] Users.filter(pk__in=pks, is_restricted=True).update(is_restricted=False) # pks = [ e['user_id'] for e in qs.filter(mode=Choice.PURGE).values('user_id') ] Users.filter(pk__in=pks, is_active=False).update(is_active=True) # qs.update(close_time=now)
def retrieve(self, request, *args, **kwargs): to = generics.get_object_or_404(Users.public(), pk=self.kwargs.get('userid')) me = request.user return Response({ 'count': models.Messages.interview_for(me, to).count(), 'unread': models.Messages.inbox_unread(me, sender=to).count(), })
def destroy(self, request, *args, **kwargs): to = generics.get_object_or_404(Users.public(), pk=self.kwargs.get('userid')) models.Messages.interview_delete(request.user, to) return Response(status=status.HTTP_204_NO_CONTENT)
def test_at(self): print(Users.extract_users(DOCS, extract_at))