middleware.py 575 B

123456789101112
  1. from misago.acl.builder import get_acl
  2. class ACLMiddleware(object):
  3. def process_request(self, request):
  4. request.acl = get_acl(request, request.user)
  5. if request.user.is_authenticated() and (request.acl.team or request.user.is_god()) != request.user.is_team:
  6. request.user.is_team = (request.acl.team or request.user.is_god())
  7. request.user.save(force_update=True)
  8. if request.session.team != request.user.is_team:
  9. request.session.team = request.user.is_team
  10. request.session.save()