All you should have to do is add an authorization decorator to your
function, e.g.:
@auth.requires_login()
def my_user_email_updater()
# your stuff here
return dict()
Look at the Authorization section in
http://www.web2py.com/examples/default/tools
On Tue, Jun 30, 2009 at 7:16 AM, Hans Donner <[email protected]> wrote:
>
> I think you should more look at how the login checks the password, and
> not try to decrypt the password.
>
> On Tue, Jun 30, 2009 at 2:05 PM, Yannick<[email protected]> wrote:
> >
> > Hello mate,
> > In my application I have this functionality that allow the users to
> > change their email address and in order to do so they need to provide
> > their password for authentication....
> > Since the password is encrypted in the DB... How can I decrypt it for
> > verification ?
> > Here is my controller:
> >
> > @auth.requires_login()
> > def changeEmail():
> >
> > current_email = auth.db(db.auth_user.id ==
> > session.auth.user.id).select()[0].email
> >
> >
> > from gluon.sqlhtml import form_factory
> > chgEmailform = form_factory(
> > SQLField('email',label='Old
> > Email',requires=IS_NOT_EMPTY(), default="%s"%current_email),
> > SQLField('newEmail',label='New
> > email',requires=IS_NOT_EMPTY(), default=''),
> > SQLField
> > ('password',label='password',requires=CRYPT(),type='password'),)
> >
> > if chgEmailform.accepts(request.vars, session, keepvalues=True,
> > formname='email'):
> >
> > users = auth.db((db.auth_user.id == session.auth.user.id)&
> > (db.auth_user.email == request.vars.email))\
> > .select()
> > print users
> >
> > if users:
> > user = users[0]
> > if user['password'] != request.vars.get('password',''):
> >
> > session.flash = 'Password not valid Please Try again'
> >
> > else:
> > db(db.auth_user.id == session.auth.user.id).update
> > (email=request.vars.newEmail)
> >
> > return dict(form = chgEmailform)
> >
> >
> > Thanks for your help,
> >
> > Cheers,
> > Yannick P.
> > >
> >
>
> >
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---