Revert "Revert "Title::checkUserBlock should call User::isBlockedFrom for every action""
This reverts commit 91fc7480301c8b2404cc280511c2fc83a6c3aa5d.
Hence it reapplies I6312a36911e5b73d773452fefef7ff25b9af08a4.
The changes made by this commit are (excluding the cases
checked for earlier):
- An action can only be blocked if prevents() is true/null and
isBlockedFrom() is truthy. Previously, any action other than
'edit' or 'create' would be blocked if prevents() was true/null,
regardless of isBlockedFrom().
- If an Action can be constructed, and requiresUnblock() is
false, the action won't be blocked. Previously, requiresUnblock()
This commit was previously reverted because it exposed that
EditEntityAction::requiresUnblock in Wikibase wrongly returned
false (fixed in I99061230023da2bbd0f98190a2907ca2e9717a4c).
Other potentially similar cases were audited in T211048.