The 'Approve this post' checkbox is displayed when editing a post even if post moderation is disabled and in this scenario unchecking the checkbox has no effect when the post is saved (ie, the post is not unapproved).
./Sources/Post.php
Line 767
Find:
// Leave the approval checkbox unchecked by default for unapproved messages.
if (!$row['approved'] && !empty($context['show_approval']))
Replace with:
// Leave the approval checkbox unchecked by default for unapproved messages.
if ($modSettings['postmod_active'] && !$row['approved'] && !empty($context['show_approval']))
The array name '$REQUEST' should be '$_REQUEST' (although it doesn't seem to make any difference to the outcome even when the array name is correct).
Line 2022
Find:
// Can they approve it?
$approve_checked = (!empty($REQUEST['approve']) ? 1 : 0);
Replace with:
// Can they approve it?
$approve_checked = (!empty($_REQUEST['approve']) ? 1 : 0);