[feature/soft-delete] Update and simplify the logic on delete_post()

Todo: delete_topic case

PHPBB3-9567
[feature/soft-delete] Add some unit tests for delete_post()

PHPBB3-9567
[feature/soft-delete] Fix delete_post() function

PHPBB3-9567
[feature/soft-delete] Add test case for (soft)deleting the only post + fix

PHPBB3-9567
[feature/soft-delete] Allow to update multiple posts with set_post_visibility

PHPBB3-9567
[feature/soft-delete] Change order of functions

PHPBB3-9567
[feature/soft-delete] Update post counts within set_post_visibility

This is an additional query in some rare cases,
but it makes it much easier to use and understand.
This is mostly a preparation for the restore case.

PHPBB3-9567
[feature/soft-delete] Fix restoring a post via editing

PHPBB3-9567
[feature/soft-delete] Topic visibility is already synced by sync('topic')

PHPBB3-9567
[feature/soft-delete] Fix display_user_activity()

The Logic of $forum_ary was inverted, so if the array is empty, we can skip
the queries. We also should not merge passworded forums into the $forum_ary
as we removed them from that array right before that.

PHPBB3-9567
[feature/soft-delete] Correctly update user_posts count

Before soft delete this was much easier, as an unapproved topic could only
have one post, because no one could reply to unapproved topics. Now we need
to run multiple queries to correctly reduce the post counts.

PHPBB3-9567
[feature/soft-delete] Fix column name in mcp_sorting()

PHPBB3-9567
[feature/soft-delete] Forgot that file when removing the old tests

PHPBB3-9567
[feature/soft-delete] Fix sync('topic_visibility')

The function can not rely on the first post anymore, as that one could be soft
deleted but the topic still has approved replies which are still visible.

PHPBB3-9567
[feature/soft-delete] Correctly synchronize the topic_visibility in sync()

This also makes sync('topic_visibility') obsolete, but we keep it for now.
Also fix a unit test, because ITEM_DELETED overpowers ITEM_UNAPPROVED

PHPBB3-9567
[feature/soft-delete] Do not allow users to reply to soft deleted topics

We should discuss this in an RFC again, but for now, we just fix the old state.
So moderators can only reply, when the topic is approved.
Also fixes a bug in the visibility check. We need to check the posts visibility
rather then the visibility of the topic. Because when the post is visible, the
topic is as well, but not the other way round.

PHPBB3-9567
[feature/soft-delete] Fix several issues within submit_post()

- $post_visibility is not boolean, so we need to check for == ITEM_APPROVED
- sync() already updates the topic/forum info, so we don't need to do that again
- use set_post_visibility() when changing the posts visibility

Should be ready for testing.

PHPBB3-9567
[feature/soft-delete] Fix several problems in the forum mcp

PHPBB3-9567
[feature/soft-delete] Fix restoring posts via MCP

PHPBB3-9567
[feature/soft-delete] Fix permission check in viewtopic.php

PHPBB3-9567