Hello,

I have a few questions about using callbacks with reset_password and 
request_reset_password. I'm using web2py 2.9.5, but I checked the 
corresponding code from the master branch and github in gluon/tools.py and 
it seems to be the same. 

Why does the callback auth.settings.reset_password_onaccept get called when 
auth.request_reset_password() is accepted, instead of when 
auth.reset_password() is accepted (request_reset vs reset)?

Why does the function reset_password in gluon/tools.py not have a callback 
at all( that is, why doesn't it have the line "callback(onaccept, form)")? 
Would it be dangerous to do so?

I wanted a callback after the auth.reset_password() form was submitted so I 
changed the reset_password function to include these lines:

    def reset_password(
        .....
        .....

        if next is DEFAULT:
            next = self.get_vars_next() or self.settings.reset_password_next

        
########################################################################
        ## Added by me (taken from the request_reset_function)
        if onvalidation is DEFAULT:
            onvalidation = self.settings.reset_password_onvalidation
        if onaccept is DEFAULT:
            onaccept = self.settings.reset_password_onaccept
        
########################################################################

            ......
            ......

            if self.settings.login_after_password_change:
                self.login_user(user)

            
######################################################################
            ## Added by me (also taken from the request_reset_password 
function)
            callback(onaccept, form)
            
######################################################################


            redirect(next, client_side=self.settings.client_side)
        return form


Is this ok to do? It seems to do what I want, which was to remove a role 
from a user after password reset.

Thank you. 

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to