I've followed along as close as possible, but I am missing something..
This is what I have done...
Added SHA1 to the registration page.
Added SHA1 to the user_profile_detail page
Logged into the system, and updated the password.
I figured, that now the reg form and the update profile, with the SHA1, would be the solution. But it is not. Upon changing my password, it does in fact encrypt it, as I see it in the "UserPassword" field, however, trying to log back in does not work, BUT... if I copy the long string of character it created (and placed in the field) and use THAT for the log in... it works.
Im not sure if I followed your instructions correctly.
Also, upon thinking this a bit deeper.... will i need to add some sort of behavior on the "forgot password" section? It seems that once it is encrypted, and a user requests it, they will get a long string of character... I have yet to test this, as I am working on localhost.