Add anonymous user support to the Permission manager models
This commit is contained in:
@@ -8,11 +8,16 @@ from django.shortcuts import get_object_or_404
|
|||||||
from django.db.utils import IntegrityError
|
from django.db.utils import IntegrityError
|
||||||
from django.core.exceptions import ImproperlyConfigured
|
from django.core.exceptions import ImproperlyConfigured
|
||||||
|
|
||||||
|
from common.models import AnonymousUserSingleton
|
||||||
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class RoleMemberManager(models.Manager):
|
class RoleMemberManager(models.Manager):
|
||||||
def get_roles_for_member(self, member_obj):
|
def get_roles_for_member(self, member_obj):
|
||||||
|
member_obj = AnonymousUserSingleton.objects.passthru_check(member_obj)
|
||||||
|
|
||||||
member_type = ContentType.objects.get_for_model(member_obj)
|
member_type = ContentType.objects.get_for_model(member_obj)
|
||||||
return [role_member.role for role_member in self.model.objects.filter(member_type=member_type, member_id=member_obj.pk)]
|
return [role_member.role for role_member in self.model.objects.filter(member_type=member_type, member_id=member_obj.pk)]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user