How to prompt the user to fill in missing fields when registering via Omniauth?
===

I'm using rails 3 and [devise][1] with the [omniauth-facebook][2] gem.  So the issue I'm having is that I'm not always getting back all the info I need from facebook.  Particularly I want a username and a valid email address.  Additionally since facebook recently changed everyone's email to @facebook.com I'd like to give users a chance to give me a different email address.

So what I'd like to happen is to do some sort of validation on the user model after it is created in the Omniauth registration process and if that validation fails I'd take users to a page where they can enter the missing information or change what facebook provided.  I saw something like this a while ago but it was for a different version of Omniauth and I can't find it now.

I was thinking one way to handle this is to check the first time a user logs in but then that means I might have a bad user in my database.  Although I guess that is what happens if someone signs up and never verifies their email address.

Ultimately I'm not sure the best way to handle this so I'd like some advice and code examples would even be better.

  [1]: https://github.com/plataformatec/devise/
  [2]: https://github.com/mkdynamic/omniauth-facebook