async def sharing_get(context, request): roleperm = IRolePermissionMap(context) prinperm = IPrincipalPermissionMap(context) prinrole = IPrincipalRoleMap(context) result = { 'local': {}, 'inherit': [] } result['local']['roleperm'] = roleperm._bycol result['local']['prinperm'] = prinperm._bycol result['local']['prinrole'] = prinrole._bycol for obj in iter_parents(context): roleperm = IRolePermissionMap(obj, None) url_factory = query_multi_adapter((obj, request), IAbsoluteURL) if roleperm is not None and url_factory is not None: prinperm = IPrincipalPermissionMap(obj) prinrole = IPrincipalRoleMap(obj) result['inherit'].append({ '@id': url_factory(), 'roleperm': roleperm._bycol, 'prinperm': prinperm._bycol, 'prinrole': prinrole._bycol, }) await notify(ObjectPermissionsViewEvent(context)) return result
async def sharing_get(context, request): roleperm = IRolePermissionMap(context) prinperm = IPrincipalPermissionMap(context) prinrole = IPrincipalRoleMap(context) result = {"local": {}, "inherit": []} result["local"]["roleperm"] = roleperm._bycol result["local"]["prinperm"] = prinperm._bycol result["local"]["prinrole"] = prinrole._bycol for obj in iter_parents(context): roleperm = IRolePermissionMap(obj, None) url = get_object_url(obj, request) if roleperm is not None and url is not None: prinperm = IPrincipalPermissionMap(obj) prinrole = IPrincipalRoleMap(obj) result["inherit"].append({ "@id": url, "roleperm": roleperm._bycol, "prinperm": prinperm._bycol, "prinrole": prinrole._bycol, }) await notify(ObjectPermissionsViewEvent(context)) return result
def default_language(context=None, name=None): for parent in iter_parents(context): if hasattr(parent, name): return parent.name return None