We tend to keep functions that do logic like this in the ```Controller``` classes, instead of in the ```model``` classes. Way back in time, we used to have functions like this in each data container instead of the controllers, but the last couple of releases, we've gradually moved all logic to the controllers instead. 
The reasoning behind that is that these logical checks tend to grow over time, and they tend to need even more data from other classes in order to decide the results, and even other controllers. In terms of responsibility, the data class should not be responsible for calling, for example, other controller methods. The dependencies should go the other way, controllers should depend on the model classes.