Project

General

Profile

1 49196 katerina.i
package eu.dnetlib.openaire.usermanagement;
2
3
import eu.dnetlib.openaire.user.utils.VerificationActions;
4 49408 sofia.balt
import org.apache.log4j.Logger;
5 49196 katerina.i
import org.springframework.beans.factory.annotation.Autowired;
6
import org.springframework.web.context.support.SpringBeanAutowiringSupport;
7
8 49408 sofia.balt
import javax.servlet.RequestDispatcher;
9 49196 katerina.i
import javax.servlet.ServletConfig;
10
import javax.servlet.ServletException;
11
import javax.servlet.http.HttpServlet;
12
import javax.servlet.http.HttpServletRequest;
13
import javax.servlet.http.HttpServletResponse;
14 49408 sofia.balt
import javax.servlet.http.HttpSession;
15 49196 katerina.i
import java.io.IOException;
16
import java.io.PrintWriter;
17
18
/**
19
 * Created by kiatrop on 28/9/2017.
20
 */
21
public class VerificationCodeServlet extends HttpServlet {
22
23
    public void init(ServletConfig config) throws ServletException {
24
        super.init(config);
25
        SpringBeanAutowiringSupport.processInjectionBasedOnServletContext(this,
26
                config.getServletContext());
27
    }
28
29
    @Autowired
30
    private VerificationActions verificationActions;
31
32 49408 sofia.balt
    private Logger logger = Logger.getLogger(VerificationCodeServlet.class);
33
34 49196 katerina.i
    @Override
35
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException {
36
        response.setContentType("text/html");
37
        PrintWriter printWriter = response.getWriter();
38
39 49197 katerina.i
        String formUsername = request.getParameter("username");
40
        String formVerificationCode = request.getParameter("verification_code");
41 49196 katerina.i
42
        if (verificationActions.verificationEntryExists(formUsername, formVerificationCode)) {
43 49199 katerina.i
            //TODO check expiration date if "now" is more than 24h from the date in DB return error message
44 49408 sofia.balt
            HttpSession session = request.getSession();
45
            session.setAttribute("username", formUsername);
46
47 49196 katerina.i
            response.sendRedirect("./resetPassword.jsp");
48 49199 katerina.i
            printWriter.close();
49 49196 katerina.i
50
        } else {
51 49415 sofia.balt
            request.getSession().setAttribute("message", "Username or verification code are not valid.");
52
            response.sendRedirect("./verify.jsp");
53 49199 katerina.i
            // response.sendRedirect("./error.jsp"); or write a message in the session
54 49196 katerina.i
        }
55
56
    }
57
}