def METHOD_NAME(item_class):
    @rules.predicate
    def _add_item(user, module):
        if module:
            return is_allowed_moderate_project(user, module) | (
                is_context_member(user, module)
                & is_live_context(user, module)
                & phase_predicates.phase_allows_add(item_class)(user, module)
            )
        return False
    return _add_item