-def process_block(blocker: str, blocked: str, reason: str, block_level: str) -> bool:
- logger.debug("blocker='%s',blocked='%s',reason='%s',block_level='%s' - CALLED!", blocker, blocked, reason, block_level)
- domain_helper.raise_on(blocker)
- domain_helper.raise_on(blocked)
-
- added = False
- if not isinstance(reason, str) and reason is not None:
- raise ValueError(f"Parameter reason[]='{type(reason)}' is not of type 'str'")
- elif not isinstance(block_level, str):
- raise ValueError(f"Parameter block_level[]='{type(block_level)}' is not of type 'str'")
- elif block_level == "":
- raise ValueError("Parameter block_level is empty")
-
- if not blocks.is_instance_blocked(blocker, blocked, block_level):
- logger.debug("Invoking blocks.add_instance(%s, %s, %s, %s) ...", blocker, blocked, reason, block_level)
- blocks.add_instance(blocker, blocked, reason, block_level)
- added = True
- else:
- logger.debug("Updating block last seen and reason for blocker='%s',blocked='%s' ...", blocker, blocked)
- blocks.update_last_seen(blocker, blocked, block_level)
-
- logger.debug("added='%s' - EXIT!", added)
- return added
-
-def alias_block_level(block_level: str) -> str:
- logger.debug("block_level='%s' - CALLED!", block_level)
- if not isinstance(block_level, str):
- raise ValueError(f"Parameter block_level[]='%s' is not of type 'str'", type(block_level))
- elif block_level == "":
- raise ValueError("Parameter 'block_level' is empty")
-
- if block_level == "silence":
- logger.debug("Block level 'silence' has been changed to 'silenced'")
- block_level = "silenced"
- elif block_level == "suspend":
- logger.debug("Block level 'suspend' has been changed to 'suspended'")
- block_level = "suspended"
- elif block_level == "nsfw":
- logger.debug("Block level 'nsfw' has been changed to 'media_nsfw'")
- block_level = "media_nsfw"
-
- logger.debug("block_level='%s' - EXIT!", block_level)
- return block_level