def _get_trusts(obj): if not Content.is_content(obj): return [] trusts = Trust.objects.filter_by_content(obj) if trusts is None: return [] if not hasattr(trusts, '__iter__'): trusts = [trusts] return trusts
def get_group_permissions(self, user_obj, obj=None): """ Returns a set of permission strings that this user has through his/her groups. """ if user_obj.is_anonymous() or obj is None: return super(TrustModelBackendMixin, self).get_group_permissions(user_obj, obj) if Content.is_content(obj): filter = self.perm_model.objects.filter return filter(group__trusts__in=self._get_trusts(obj), group__user=user_obj) return []