Lines 11, 14, and 15 shouldn't be necessary.  The `viewable_by?` method should be responsible for that logic.