+1 to putting it on the model, and +1 for being able to re-use that in the UI somehow.