moving logic for whether an event can be attended by someone from the view to model