I wholeheartedly side with the second proposal. It doesn't introduce hidden state/context variables (such as community settings) and presents the user a clearly "aforeexplained" set of options. The extra cost would be, I presume, one extra boolean filed in the [banner, banned] association table (provided the backend is an RDB) and an extra condition term in the WHERE clause.
Re: Issue 2329