(user)
| 1605 | anybody_frozenset = frozenset(['anybody']) |
| 1606 | |
| 1607 | def get_user_groups(user): |
| 1608 | result = local.user_groups_cache.get(user) |
| 1609 | if result is not None: return result |
| 1610 | if user is None: return anybody_frozenset |
| 1611 | result = {'anybody'} |
| 1612 | for cls, func in usergroup_functions: |
| 1613 | if cls is None or isinstance(user, cls): |
| 1614 | groups = func(user) |
| 1615 | if isinstance(groups, str): # single group name |
| 1616 | result.add(groups) |
| 1617 | elif groups is not None: |
| 1618 | result.update(groups) |
| 1619 | result = frozenset(result) |
| 1620 | local.user_groups_cache[user] = result |
| 1621 | return result |
| 1622 | |
| 1623 | def get_user_roles(user, obj): |
| 1624 | if user is None: return frozenset() |
no test coverage detected