Simplify logic for preventing publication

the reason_to_prevent_approval method is now only used in one place
and makes things less readable.