ok, I really dislike this method...

It should be moved into a validator that looks like this:

https://gist.github.com/thatrubylove/11119054

You will also see code above get moved here, which is good. We are separating and consolidating concerns.