import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import beans.AccountDB;
import beans.ColorDB;


public class Login extends HttpServlet {
  @Override
  protected void doPost(HttpServletRequest req, HttpServletResponse res) 
  throws ServletException, IOException {
    req.setCharacterEncoding("Windows-31J");
    String account = req.getParameter("account");
    String passwd  = req.getParameter("passwd");
    String tmp;
    HashMap<String, String> accounts = AccountDB.getAccounts();
    HashMap<String, Integer> colors = ColorDB.getColors();
   
    if (account!=null && passwd!=null && 
        (tmp=accounts.get(account))!=null && tmp.equals(passwd)) {
      // ログインに成功した。      
      HttpSession session = req.getSession();
      session.setAttribute("account", account);
      session.setAttribute("colors", colors);
      session.setAttribute("cart", new ArrayList<String>()); // 買い物カートを用意
      res.sendRedirect(res.encodeRedirectURL("ItemList"));                          // 商品一覧を表示
    } else {
      res.sendRedirect(res.encodeRedirectURL("jsp/LoginFailed.jsp"));           // エラーページを表示
    }   
  }
}
