I am using Devise and Omniauth to offer login via native(devise), facebook and google+
Users can theoretically login with any method in succession and I would like to register the last method of authentication. For Facebook and G+ I am able to record it in the find_* method on my user table but Devise 'native' auth is a closed book.
The best approach i can think of is to update a session variable in a controller just prior to login and then use a warden authentication callback or subclass the sessions controller
as here: Ruby on Rails Devise code after login
to update the user with the auth type straight after but it seems a little messy.