def isAvailable(self): principal = self.space.principal if principal is not None: return checkPermissionForPrincipal( principal, 'zojax.PersonalContent', self.space) else: return False
def canAssignPrincipal(self, principal): if (not IUnauthenticatedPrincipal.providedBy(principal) and IPrincipal.providedBy(principal) and not IGroup.providedBy(principal) and checkPermissionForPrincipal(principal,'zojax.PersonalSpace',self)): return True return False
def getAccessList(context, permission): context = removeAllProxies(context) grant = IExtendedGrantInfo(context) interaction = queryInteraction() if not IZojaxSecurityPolicy.providedBy(interaction): interaction = SecurityPolicy() allowed = {} for role, setting in grant.getRolesForPermission(permission): if role == 'content.Owner': for principal, setting in grant.getPrincipalsForRole('content.Owner'): if setting is Allow and principal: allowed['user:'******'user:'******'user:'******'user:'******'user:%s'%principal.id if checkPermissionForPrincipal(principal, permission, context): allowed[uid] = 1 else: if uid in allowed: del allowed[uid] return allowed.keys()
def isRetractable(self, principal=None): if not IBoundContentType.providedBy(self): return False if not self.retractable or not self.retractperm: return False if principal is None: principal = getPrincipal() return checkPermissionForPrincipal( principal, self.retractperm, self.context)
def isAvailable(self): return checkPermissionForPrincipal( self.space.principal, 'zojax.PersonalPhotos', self.space)