def disable_member(user): logger.debug("Disabling member %s" % user) if user.user_permissions.all().exists(): logger.info("Clearning user %s permission to deactivate user." % user) user.user_permissions.clear() if user.groups.all().exists(): logger.info("Clearing user %s groups to deactivate user." % user) user.groups.clear() validate_services(user, None)
def pre_save_auth_state(sender, instance, *args, **kwargs): if instance.pk: old_instance = AuthServicesInfo.objects.get(pk=instance.pk) if old_instance.state != instance.state: logger.debug('Detected state change for %s' % instance.user) if instance.state == MEMBER_STATE: make_member(instance) elif instance.state == BLUE_STATE: make_blue(instance) else: disable_member(instance.user) validate_services(instance.user, instance.state)