package logic;

import model.DAO;
import model.User;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.logging.Logger;

/**
 * @author Andréa
 * @version 1.0 25/03/11
 */
@WebServlet(name = "Controller",urlPatterns = {"/Controller"})
public class Controller extends HttpServlet {

    private static final Logger logger =
            Logger.getLogger(Controller.class.getCanonicalName());

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String login = request.getParameter("login");
        String password = request.getParameter("password");

        //load user
        User user = DAO.loadUser(login, password);

        logger.info("User : " + user);

        //if logs are invalid
        if (user == null) {
            request.getSession().setAttribute("errorMessage", "Identifiants invalides");
            response.sendRedirect(request.getContextPath());
            //sinon
        } else {
            //autoconnection cookie
            Cookie autoConnectionCookie = CookieManager.createAutoConnexionCookie(user);
            response.addCookie(autoConnectionCookie);
            //user in session scope
            request.getSession().setAttribute("user", user);
            response.sendRedirect(request.getContextPath() + "/secret-page.jsp");
        }
    }
}
