package servlet;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import util.PasswordUtil;
import modele.User;
import modele.UserSession;
import dao.Dao;
public class EmailServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String resultPage;
response.setContentType("text/html");
/*
* get user login, old and new password values
*/
String email = request.getParameter("email");
String message="Aucun email dans la base de donn�e ne correspond � celui entr�";
String user=Dao.emailDisponible(email);
if(user!=null){
User u =Dao.getUser(user);
String rp=PasswordUtil.randomPass();
u.setPassWord(PasswordUtil.hasher(rp, Dao.getpasswordSetting().getSalt(), Dao.getpasswordSetting().getAlgorithm()));
Dao.updateUser(u);
message=""
+ "Votre mot passe temporaire est: " + rp +
". \nOuvrez une session avec et utiliser l'option changer mot de passe pour le changer.";
}
request.setAttribute("Message", message);
resultPage = "/jsp/DisplayMessage.jsp";
UserSession.getInstance().recordTime();
forward(resultPage, request, response);
}
/**
* transfert la page demand�e � l'utilisateur
*/
public void forward(String target, HttpServletRequest myRequest, HttpServletResponse myResponse) {
try {
//Get the request dispatcher at the specified target.
RequestDispatcher requestDispatcher = myRequest
.getRequestDispatcher(myRequest.getServletPath().substring(
0, myRequest.getServletPath().lastIndexOf("/"))
+ "/" + target);
requestDispatcher.forward(myRequest, myResponse);
} catch (Exception e) {
//TODO Forward to error page.
e.printStackTrace();
}
}
}