def _get_db_functionality( name: str, user: Dict[str, Any], types: Dict[str, Dict[str, Any]], request: pyramid.request.Request, errors: Set[str], ) -> List[Union[str, int, float, bool, List[Any], Dict[str, Any]]]: if types.get(name, {}).get("single", False): values = [ get_typed(name, functionality["value"], types, request, errors) for functionality in user["settings_functionalities"] if functionality["name"] == name ] return [r for r in values if r is not None] functionalities = { functionality["value"] for functionalities in user["roles_functionalities"].values() for functionality in functionalities if functionality["name"] == name } values = [ get_typed(name, functionality_value, types, request, errors) for functionality_value in functionalities ] return [r for r in values if r is not None]
def _get_db_functionality(name, role, types, request, errors): result = [ get_typed(name, functionality.value, types, request, errors) for functionality in role.functionalities if functionality.name == name ] return [r for r in result if r is not None]
def _get_metadata(self, item, metadata, errors): metadatas = item.get_metadatas(metadata) return (None if not metadatas else get_typed(metadata, metadatas[0].value, self.metadata_type, self.request, errors, layer_name=item.name))
def _get_metadata_list(self, item: main.TreeItem, errors: Set[str]) -> Dict[str, Metadata]: metadatas: Dict[str, Metadata] = {} metadata: main.Metadata for metadata in item.metadatas: value = get_typed(metadata.name, metadata.value, self.metadata_type, self.request, errors) if value is not None: metadatas[metadata.name] = value return metadatas
def _get_metadatas(self, item, errors): metadatas = {} for metadata in item.metadatas: value = get_typed(metadata.name, metadata.value, self.metadata_type, self.request, errors) if value is not None: metadatas[metadata.name] = value return metadatas
def _get_metadata( self, item: main.TreeItem, metadata: str, errors: Set[str] ) -> Union[None, str, int, float, bool, List[Any], Dict[str, Any]]: metadatas = item.get_metadatas(metadata) return (None if not metadatas else get_typed(metadata, metadatas[0].value, self.metadata_type, self.request, errors, layer_name=item.name))
def _get_db_functionality(name, user: static.User, types, request, errors): if types[name].get('single', False): values = [ get_typed(name, functionality.value, types, request, errors) for functionality in ([] if user.settings_role is None else user.settings_role.functionalities) if functionality.name == name ] return [r for r in values if r is not None] else: functionalities = { functionality.value for role in user.roles for functionality in role.functionalities if functionality.name == name } values = [ get_typed(name, functionality_value, types, request, errors) for functionality_value in functionalities ] return [r for r in values if r is not None]
def _get_config_functionality(name, registered, types, request, errors): result = None if registered: result = get_setting(request.registry.settings, ("functionalities", "registered", name)) if result is None: result = get_setting(request.registry.settings, ("functionalities", "anonymous", name)) if result is None: result = [] elif not isinstance(result, list): result = [result] result = [get_typed(name, r, types, request, errors) for r in result] return [r for r in result if r is not None]
def _get_config_functionality(name, registered, types, request, errors): result = None if registered: result = get_setting( request.registry.settings, ("functionalities", "registered", name)) if result is None: result = get_setting( request.registry.settings, ("functionalities", "anonymous", name)) if result is None: result = [] elif not isinstance(result, list): result = [result] result = [get_typed(name, r, types, request, errors) for r in result] return [r for r in result if r is not None]
def _get_db_functionality(name, role, types, request, errors): result = [ get_typed(name, functionality.value, types, request, errors) for functionality in role.functionalities if functionality.name == name ] return [r for r in result if r is not None]