[opencms-dev] Forgot Password functionality

Frans Postma fpostma at xs4all.nl
Wed Mar 23 09:30:26 CET 2005


I think you need to add something like this as last line:


    cmso.writeUser(user);

== javadoc:

writeUser

public void writeUser(CmsUser user)
               throws CmsException
Updates the user information. 

The user id has to be a valid OpenCms user id.
The user with the given id will be completely overriden by the given data.

Parameters:
user - the user to be written 
Throws: 
CmsException - if operation was not successful
==

Frans

> -----Original Message-----
> From: opencms-dev-bounces at opencms.org 
> [mailto:opencms-dev-bounces at opencms.org] On Behalf Of Patricio Keilty
> Sent: woensdag 23 maart 2005 0:40
> To: The OpenCms mailing list
> Subject: [opencms-dev] Forgot Password functionality
> 
> Hi,
> i need to provide Forgot Password functionality for our 
> extranet, so in 
> case a customer has forgotten its username or pass, can enter 
> his email 
> and get its user & new pass emailed. So, user data needs to 
> be retrieved 
> by email, generate a random password & update user data; then 
> user/pass 
> will be mailed back to the customer.
> Have found a similar thread but with different requirements in 
> http://mail.opencms.org/pipermail/opencms-dev/2004q4/014262.html. 
> <http://mail.opencms.org/pipermail/opencms-dev/2004q4/014262.html>
> I plan to employ a jsp like the following:
> 
> <%
>     CmsJspActionElement cms = new CmsJspActionElement( pageContext, 
> request, response );
>     CmsObject cmso = cms.getCmsObject();
> 
>     String returnEmail = request.getParameter( "email" );
>     String userName = request.getParameter( "username" );
>     String redirect = request.getParameter( "redirect" );
> 
>     try {
> 
>         // retrieve user by email?
>         CmsUser user = cmso.readUser( userName );
>         String userEmail = user.getEmail();
>         if( userEmail != null && !userEmail.equals(  returnEmail )){
>              // email does not match
>         } else {
>             // create new random password
>             String newPass = "aabbcc";
> 
>             user.setPassword( newPass );
>             user.touch();
>         }
>     } catch( CmsException e ){
>         // user not found
>     }
> 
>     response.sendRedirect( redirect );
> %>
> 
> Is it possible to retrieve user data by email?
> Have tried to change user password using 
> CmsUser.setPassword(), but it 
> did not update user pass.
> 
> Could someone please provide sample code or any hints to 
> achieve these?
> 
> Thanks in advance,
> Patricio
> 
> -- 
> Patricio Keilty
> Colaborativa.net
> 
> 
> 
> _______________________________________________
> This mail is send to you from the opencms-dev mailing list
> To change your list options, or to unsubscribe from the list, 
> please visit
> http://mail.opencms.org/mailman/listinfo/opencms-dev
> 




More information about the opencms-dev mailing list